101С_компоненты

advertisement
Ф о р м а
F
O
R
M
Форма FORM – основной блок в Дельфи. Любая программа имеет как минимум
одну связанную с ней форму, которая называется главной
- эта форма появляется
на экране в момент старта программы. Однако программа может иметь сколько угодно
форм, каждая из которых решает какую-то локальную задачу и появляется на экране по
мере надобности.
Свойства:
Align
- выравнивание в окне Дельфи после команды Run
Caption
Color
- заголовок окна
- цвет клиентской области окна
Position
- размещение формы относительно границ экрана -
определяет положение и размер окна в момент его появления на экране
poDesigned
- также как и на этапе конструирования окна формы (по
умолчанию)
poDefault
- положение и размеры определяет Windows
poScreenCenter – в центре экрана, с размерами, как на этапе
конструирования
B o r d e r S t y l e – стиль рамки окна после выполнения команды Run
- рамка толщиной 1 пиксель (такое окно не может изменять
bsSingle
свои размеры)
bsSizeable
- обычная рамка и т.д. (по умолчанию)
bsDialog
- как диалоговое
bsNone
- только рабочая область
Form1
X
Методы:
Close
- закрывает окно, для главного окна – завершает работу программы
События :
On Activate
- возникает в момент активизации окна (при получении ею
фокуса ввода)
On Create
экране
- возникает в момент создания окна, но до его появления на
Компонент Label – метка
Метки предназначены для размещения на экране текстовой информации,
содержащей различные пояснения, названия, заголовки и т.д. Метки в Delphi являются
экземплярами класса TLabel. Метки получают имя Label1, Label2 и т.д. по порядку их
вывода на форму. Свойства компонента Label приведены в таблице:
Таблица
Свойство
Пояснение
Имя компонента. Используется в программе для доступа к компоненту и его
свойствам
Caption
Отображаемый текст
Font
Шрифт, используемый для отображения текста
ParentFont Признак наследования компонентом характеристик шрифта формы, на
которой находится компонент. Если значение свойства равно True, текст
выводится шрифтом, установленным для формы
AutoSize
Признак того, что размер поля определяется его содержимым
Alignment определяет выравнивание текста в компоненте: TaLeftJustify – выравнивание
по левому краю, taRightJustify - выравнивание по правому краю. По
умолчанию выравнивание происходит по левому краю
Left
Расстояние от левой границы поля вывода до левой границы формы
Top
Расстояние от верхней границы поля вывода до верхней границы формы
Height
Высота поля вывода
Width
Ширина поля вывода
WordWrap Признак того, что слова, которые не помещаются в текущей строке,
автоматически переносятся на следующую строку
Некоторые свойства компонента Label, имеющие частое применение:
Alignment – определяет выравнивание текста в компоненте. Оно принимает следующие
значения TaLeftJustify – выравнивание по левому краю,
taRightJustify выравнивание по правому краю. По умолчанию выравнивание происходит по
левому краю;
AutoSize – при значении свойства True будет автоматически изменятся ширина и
высота метки в соответствии с размещенным в ней текстом;
Transparent при значении свойства True фон метки будет прозрачным по отношению к
другим компонентам;
WordWrap – при значении True после заполнения текущей строки происходит перенос
текста на новую строку. По умолчанию имеет значение False.
Caption – основное свойство, где помещается текст, размещаемый в поле метки,
вводится после установки вышеприведенных свойств.
Если необходимо, чтобы находящийся в поле вывода текст занимал несколько
строк, то надо сразу после добавления к форме компонента присвоить свойству
AutoSize значение False, свойству WordWrap – значение True. Затем изменением
значений свойств Width и Height нужно задать требуемый размер поля.
При динамическом изменении свойств (на этапе программирования) доступ к
свойству, например, Caption (и любым другим) осуществляется указанием имени
переменной, определяющей компонент, а затем через точку приводится название этого
свойства:
Label1.Caption := ‘ Введите размерность массива‘ ;
Что соответствует выводу в поле метки текста, заключенного в апострофах.
Name
Компонент Edit - однострочный редактор
В Delphi имеются компоненты, позволяющие с помощью клавиатуры вводить в
программу и редактировать разнообразную символьную информацию. Наибольшее
использование имеют однострочный редактор ввода символов класса TEdit и
многострочный редактор текста класса TMemo.
Строка ввода Edit, являющаяся классом TEdit, позволяет вводить и редактировать
одну строку текста. Кнопка компонента на странице Standard палитры компонентов
имеет вид:
В таблице перечислены основные свойства компонента Edit – поля
редактирования
Таблица
Свойство
Описание
Text
Имя компонента. Используется в программе для доступа к компоненту и его
свойствам, в частности – для доступа к тексту, введенному в поле
редактирования
Текст, находящийся в поле ввода и редактирования
Left
Расстояние от левой границы компонента до левой границы формы
Top
Расстояние от верхней границы компонента до верхней границы формы
Name
Height
Высота поля
Width
Ширина поля
Font
Шрифт, используемый для отображения вводимого текста
Признак наследования компонентом характеристик шрифта формы, на
которой находится компонент. Если значение свойства равно True, то при
ParentFont
изменении свойства Font формы автоматически меняется значение свойства
Font компонента
Значения свойств Height и Width определяют высоту и ширину формы, а значения
свойств Left и Top определяют координату верхнего левого угла поля компонента.
Основным свойством строки ввода является свойство Text.
Символьная строка может быть помещена в свойство либо на этапе
конструирования формы, либо во время выполнения программы.
Чаще всего редактор используется для ввода информации. В этом случае на этапе
конструирования формы в свойство Text можно поместить пустую строку, а на этапе
выполнения извлекать из него введенные значения. Если вводятся символьные
представления числовых данных, то в дальнейшем они должны быть преобразованы
при помощи соответствующих подпрограмм преобразования типов.
Для преобразования символов строки, введенных в Edit, в вещественное число
используется функция StrToFloat, а для преобразования символов строки в целое число
– функция StrToInt.
При выводе чисел, полученных в результате вычислений, выполненных
программой, используются функции обратного преобразования FloatToStr и IntToStr
соответственно для вещественных и целых чисел
Поскольку строка ввода является оконным элементом управления, то она
обрабатывает все события от мыши и клавиатуры, события, связанные с
перетаскиванием, активизацией и снятием активизации, а также событие OnChange,
которое возникает при изменении текста строки ввода и является событием по
умолчанию для строки ввода класса TEdit.
Чтобы создать на форме текстовое поле, надо: выбрать панель Standard
(Стандартная); щелкнуть по кнопке Edit (Текстовое поле); щелкнуть на том месте
формы, где требуется поместить текстовое поле.
Черные маркеры по контуру объекта указывают, что он выделен. Эти маркеры
предназначены для изменения размеров объекта с помощью мыши.
У компонента Edit (Текстовое поле) свойства Caption (Заголовок) нет. Вместо него
активно используется свойство Text (Текст), относящееся в Инспекторе объектов к
категории Localizable (Настраиваемые). Это свойство содержит введенные
пользователем данные в текстовом виде. Первоначально это свойство содержит строку,
совпадающую с именем элемента управления (Edit1, Edit2). Текущее содержимое
свойства Text (Текст) каждого текстового поля формы лучше удалить.
К объекту Edit можно применять метод SetFocus (установить фокус), который
позволяет установить курсор в поле Edit. Если в каком-либо обработчике события
записать предложение Edit1.SetFocus, то курсор будет установлен в поле Edit1.
Доступ к свойству Text (и любым другим) осуществляется указанием имени
переменной, определяющей компонент, а затем через точку приводятся названия этих
свойств:
Edit1.Text
- текст в окне Edit1
Edit1.Color - цвет окна Edit1
Компонент Memo - многострочный редактор
Компонент Memo позволяет работать с многострочным текстом, причем этот
редактор обладает практически теми же возможностями, что и редактор Edit, но
состоит из нескольких строк.
Его значок
находится на странице Standard палитры компонентов. К форме
компонент Memo добавляется обычным образом.
Основные свойства компонента Memo приведены в таблице:
Обозначение
Свойство
Name
Имя поля. Используется в программе для доступа к содержимому
текста
Text
Текст, находящийся в поле редактирования
Lines
Список строк, помещенных в поле редактирования
Left
Расстояние от левой границы поля до левой границы формы
Top
Расстояние от верхней границы поля до верхней границы формы
Height
Высота поля
Wight
Ширина поля
Font
Шрифт, используемый для отображения вводимого текста
Parent Font
Признак наследования свойств шрифта родительской формы
Свойство Text компонента Memo отличается от аналогичного свойства редактора
Edit тем, что состоит из нескольких строк.
При нажатии клавиши «Enter» в поле Memo формируются символы конца строки
(10 ) или перехода на новую строку (13).
Свойство Lines содержит пронумерованный список строк, первая строка в этом
списке имеет индекс 0, вторая – 1, а общее количество строк можно узнать с помощью
метода Lines.Count.
Компонент Button - командная кнопка
Командная кнопка Button предназначена для формирования события при нажатии
на нее. Командная кнопка находится на странице «Standard» палитры компонентов и
имеет вид . Перенос компонента в любую точку на форме осуществляется
аналогично компонентам Edit или Label. Свойства компонента приведены в таблице 1.
Таблица 1
Свойство
Описание
Name
Имя компонента. Используется в программе для доступа к компоненту и его
свойствам
Caption
Текст на кнопке
Enabled
Признак доступности кнопки. Кнопка доступна, если значение свойства равно
True, и не доступна, если значение свойства равно False
Left
Расстояние от левой границы кнопки до левой границы формы
Top
Расстояние от верхней границы кнопки до верхней границы формы
Height
Высота кнопки
Width
Ширина кнопки
Кнопка класса TButton обрабатывает все события, определенные для оконного
управления. Особенностью кнопки класса TButton является то, что она не обладает
свойством Color и цвет фона для нее определяется Windows.
Событием по умолчанию для кнопки является событие OnClick. Для того, чтобы
получить в окне формы результат выполнения программы при активизации командной
кнопки в результате щелчка левой клавиши мыши (ЛКМ), необходимо написать
соответствующий обработчик события и включить его в модуль, созданный в окне
кода.
Обработчик события
Обработчик события представляет собой программу, которая выполняет
определенные действия по решению конкретной задачи при щелчке на кнопке. Эти
подпрограммы программист пишет на языке Object Pascal. Имеются два вида
подпрограмм: Procedure (Процедура) и Function (Функция).
Структура процедуры имеет следующий вид:
PROCEDURE <Имя>(список параметров);
LABEL {описание меток}
CONST {описание констант}
TYPE {описание типов}
VAR {описание переменных}
BEGIN
{исполняемые операторы}
END;
Заголовок процедуры состоит из слова Procedure, за которым следует имя
процедуры. Если у процедуры есть параметры, они указываются после имени
процедуры в круглых скобках. Заканчивается заголовок символом «;».
Разделы процедуры Label, Const, Type, Var предназначены для описания всех
объектов, используемых внутри процедуры, и могут частично или все отсутствовать.
Назначение этих разделов подробно рассматривается при изучении языка Object Pascal.
Раздел, включающий исполняемые операторы, выполняющие действия по решению
определенной задачи, начинается со слова Begin (начало) и заканчивается словом End
(конец), за которым следует символ «;».
Обращение к подпрограмме осуществляется с помощью оператора процедуры,
состоящего из имени процедуры за которым следует список параметров, заключенный
в круглые скобки, если в заголовке процедуры присутствовал такой список.
Структура функции имеет следующий вид:
FUNCTION <Имя>(список параметров) : <ТИП>;
LABEL {описание меток}
CONST {описание констант}
TYPE {описание типов}
VAR {описание переменных}
BEGIN
{исполняемые операторы}
END;
Заголовок функции отличается от заголовка процедуры указанием типа результата,
полученного при ее выполнении. Назначение всех разделов описания объектов,
обрабатываемых внутри функции, аналогично назначению разделов процедуры.
В разделе операторов помимо объектов, перечисленных в разделах объявления
переменных, можно использовать переменную REZULT. После завершения
выполнения операторов внутри функции полученный результат становится значением
функции. Поэтому среди операторов функции должен быть оператор, который
присваивает переменной REZULT значение результата выполнения функции.
Обращение к функции осуществляется с помощью указателя функции, имя
которого совпадает с именем функции, а за указателем следует список параметров в
круглых скобках.
Обработчики событий, оформленные в виде процедур и функций, вставляются в
модуль программного приложения в окне кода в разделе implementation после
директивы компилятора {$R *.DFM}.
Для большинства компонент Delphi имеются события, обработчики которых можно
подготовить, используя страницу Events инспектора объектов. На ней указаны все
события, на которые может реагировать выбранный объект. Каждому событию
присвоено имя. Например, щелчок кнопки мыши – это событие OnClick. В таблице 2
приведено назначение некоторых событий.
Реакцией на любое событие должно быть какое-либо действие, а для того чтобы
программа выполняла некоторую работу в ответ на действия пользователя,
программист должен написать процедуру обработки соответствующего события.
Надпись на командной кнопке по умолчанию – Button. В процессе создания
формы конкретного приложения целесообразно изменять надписи на кнопке на текст,
соответствующий назначению обработчика события, который будет активизирован при
щелчке левой клавиши мыши на кнопке. Например, если надо вычислить сумму двух
чисел, введенных в поля Edit и за кнопкой Button закрепить действия по сложению
чисел, то подходящей надписью на кнопке будет название «Сложить».
Таблица 2
Событие
Действие, при котором происходит событие
OnClick
При щелчке кнопкой мыши
OnDblClick
При двойном щелчке кнопкой мыши
OnMouseDown При нажатии кнопки мыши
OnMouseUp
OnMouseMove
OnKeyPress
OnKeyDown
OnKeyUp
OnCreate
OnPaint
OnEnter
OnExit
При отпускании кнопки мыши
При перемещении мыши
При нажатии клавиши клавиатуры
При нажатии клавиши клавиатуры. События OnKeyDown и OnKeyPress
– это чередующиеся повторяющиеся события, которые происходят до тех
пор, пока не будет отпущена удерживаемая клавиша (в этот момент
происходит событие OnKeyUp)
При отпускании нажатой клавиши клавиатуры
При создании объекта (формы, элемента управления). Процедура
обработки этого события обычно используется для инициализации
переменных, выполнения подготовительных действий
При появлении окна на экране в начале работы программы, после
появления части окна, которая, например, была закрыта другим окном и
в других случаях
При получении элементом управления фокуса
При потере элементом управления фокуса
Компонент «Кнопка с картинкой» - BitBtn
На вкладке Additional расположены компоненты общего назначения. Некоторые из
них в функциональном плане дублируют компоненты вкладки Standard.
Графическая кнопка TBitBtn
представляет собой разновидность кнопки
TButton. Ее отличительная особенность – свойство Glyph, с помощью которого
определяется растровое изображение на поверхности кнопки. В комплект Delphi входит
множество рисунков, разработанных специально для размещения на этих кнопках.
Свойство Kind определяет одну из 11 разновидностей кнопки BitBtn, показанных
на рис.1.
Рис. 1. Разновидности кнопок TBitBtn
В свойстве Kind задается реакция кнопки на щелчок. Некоторые стандартные
свойства
можно
реализовать
без
дополнительного
программирования.
Соответствующие значения свойства Kind приведены в таблице 3.
Щелчок на любой из показанных на рисунке кнопок, кроме кнопок bkCustom и
bkHelp, закрывает модальное окно и возвращает в программу результат вида mrXXX
(bkOk – mrOk, bkCancel – mrCancel и т.д.).
Таблица 3
Значение
Действие
bkCustom
bkOk
Реакция кнопки определена программистом
Закрытие формы стандартным действием. В свойство ModalResult
записывается значение MrOk
Закрытие формы с отказом от изменений. В свойство ModalResult
записывается значение mrCancel
Подтверждение изменений. В свойство ModalResult записывается значение
mrYes
Отказ от изменений. В свойство ModalResult записывается значение mrNo
Вызов раздела справочной системы в соответствии со значением, записанным
в свойство HelpContext
Закрытие формы
Прерывание. Форма не закрывается
Повтор попытки
Игнорирование возникающей ситуации
Подтверждение всех изменений.
bkCancel
bkYes
bkNo
bkHelp
bkClose
bkAbort
bkRetry
bkIgnore
bkAll
Свойство ModalResult определяет способ закрытия формы, на которой
расположена кнопка. Это свойство есть и у обычной кнопки TButton.
Как и в кнопках TButton, программист не может управлять цветом поверхности
кнопки, но в отличие от TButton, может менять цвет надписи на ней. С помощью
свойства Default кнопку можно сделать кнопкой, выбранной по умолчанию, - в этом
случае нажатие клавиши Enter автоматически вызывает обработчик ее события
OnClick. Однако кнопками, выбранными по умолчанию, можно сделать только кнопки
bkYes и bkNo, остальные значения свойства Kind будут заменяться на bkCustom при
вводе в свойство Default значения True, и, наоборот – в свойство Default автоматически
помещается значение False при установке в свойство Kind любого значения, кроме
bkYes, bkNo или bkCustom.
Компонент панель - Panel
Панель Panel (страница Standard), вид пиктограммы
, служит для объединения
нескольких компонентов в одной области формы. Содержит внутреннюю и внешнюю
кромки, что позволяет создавать эффект «выпуклости» и «вдавленности». Компонент
не имеет заголовка, однако имеет свойство Caption, позволяющее выводить сообщения
на панель. Компоненты этого класса помещаются на форму для того, чтобы
располагать на ней другие компоненты вдоль одной из сторон окна, независимо от
изменения размеров этого окна. Например, можно расположить на панели кнопки и
поле ввода, и разместить ее вдоль нижней части окна. В этом случае расположение
компонентов, размещенных на панели, будет всегда в нижней части окна, даже, если
распахнуть окно во весь экран.
Панель помещается на форму, а затем на нее переносятся выбранные компоненты.
Размещенные на панели компоненты уже нельзя переместить на форму вне границ
самой панели. Назначения свойств компонента Panel приведены в таблице.
Таблица
Свойство
Описание
Указывает способ выравнивания компонента (alBottom –внизу; alTop –
вверху; alLeft – слева и т.д.)
Alignment Определяет выравнивание текста относительно границ компонента
BevelInner Определяет вид внутренней кромки (bvNone – нет кромки; bvLowered –
вдавленная кромка; bvRaised –приподнятая кромка)
BevelOuter Определяет вид внешней кромки
BevelWidth Определяет толщину кромок
BorderStyle Определяет стиль рамки (bsNone – нет рамки; bsSingle –линия рамки
толщиной 1 пиксель)
Align
Метка с бордюром для отображения текста StaticText
Компонент расположен на странице Additional, пиктограмма
Компонент подобен компоненту Label, за исключением двух моментов:
1. Он порожден от класса TWinControl, поэтому имеет Windows-окно
2. В свойство BorderStyle добавлено значение sbsSunken, которое создает иллюзию
вдавленности компонента
StaticText – оконный компонент, отображающий
однострочный текст на форме, не подлежащий
редактированию.
Свойства:
Caption – задает текст метки
Color - цвет фона
Font.color - цвет текста
AutoSize – размер метки.
Если True – высота и ширина определяются
размером надписи
Если False – выравнивание текста
определяется свойством Alignment,
автоматически выполняется перенос слов
и размещение текста на нескольких строках
Alignment выравнивание по левому или правому
краю, либо по центру
Visible – определяет видим или невидим
Компонент во время выполнения
Основные события – OnClick, OnMouseDown, OnMouseUp
Основные методы – Hide, Show
Компонент SpinEdit (страница Samples)
Выбор размерности массива можно выполнить, используя компонент
кнопку-счетчик с окном редактирования SpinEdit (страница Samples) – редактор
для ввода целого числа
.
Компонент SpinEdit (страница Samples палитры компонентов)
предназначен для ввода или отображения целого числа и представляет собой
комбинацию однострочного редактора и кнопок. Редактор может вводить только
числа, а кнопки позволяют изменять число на некоторую фиксированную
величину.
Основные свойства компонента:
Text – содержит вводимый или выводимый текст
MaxValue –верхняя граница диапазона возможных значений Value
MinValue - нижняя граница диапазона возможных значений Value
Value – текущее значение числовой величины (тип Integer)
Increment – фиксированная величина шага изменения числа
Событием по умолчанию является событие OnChange, которое вызывается
двойным щелчком ЛКМ по выделенному компоненту SpinEdit. При этом в окне
кода появляется шаблон обработчика событий, где записывается команда
присвоения переменной n выбранное значение размерности.
Procedure TForm1.SpinEdit1Change (Sender:TObject);
Begin
n := SpinEdit1.Value;
End;
Если при создании стартовой формы были определены значения свойств
MaxValue и MinValue и значение выбирается с помощью кнопок увеличения или
уменьшения, то можно не выполнять контроль вводимого числа.
Компонент MaskEdit - «Специализированный редактор»
Специализированный редактор TMaskEdit (кнопка вызова на странице Additional
имеет вид
) предназначен для ввода текста, соответствующего некоторому
шаблону, задаваемому свойством EditMask : string. Если это свойство не задано,
TMaskEdit работает как обычный редактор TEdit.
В таблице 1 приведены значения свойств компонента MaskEdit, связанные с
заданием шаблона.
Таблица 1
Свойство
EditMask
IsMasked
EditText
Text
Описание
Задает шаблон для ввода строки
Доступно только для чтения, имеет значение True, если
строка шаблона задана
Содержит текст до наложения на него маски шаблона
Содержит либо исходный текст, либо результат наложения на
него маски шаблона
Остальные свойства компонента повторяют соответствующие свойства TEdit.
Шаблон состоит из трех частей, отделенных символами «;». Первая часть задает
маску ввода, вторая – это символ «0» или «1», определяющий, записывается ли в
свойство Text результат наложения маски или исходный текст («0» - исходный текст).
В третьей части указывается символ, который в окне редактора будет стоять в полях,
предназначенных для ввода символов (текст в редакторе может содержать символы
маски)
Маска состоит из описателей полей ввода, специальных символов и литералов.
Описатель указывает, какой именно символ может ввести пользователь в данное
поле (описатель всегда описывает поле единичной длины, т.е. рассчитанное на ввод
одного символа).
Специальные символы формируют дополнительные указания редактору.
Литерал вставляется в текст, показываемый в окне редактора, но при вводе курсор
перескакивает через литерал и не дает пользователю возможности изменить его.
Литералами считаются любые символы, кроме описателей полей и специальных
символов, а также любой символ, которому предшествует символ «\».
Описатели полей ввода представлены в таблице 2, специальные символы,
используемые в маске – в таблице 3.
Таблица 2
Символ
Поле . . .
L
Должно содержать букву
L
Может содержать букву
A
Должно содержать букву или
цифру
a
Может содержать букву или
цифру
C
Должно содержать любой символ
Символ
Поле . . .
c
Может содержать любой символ
0
Должно содержать цифру
9
Может содержать цифру
#
Может содержать цифру, «+», «-»
Таблица 3
Символ
Назначение
\
следующий символ – литерал. Позволяет вставить в маску литералы из
символов описателей
:
На это место вставляется символ-разделитель Windows для часов, минут, секунд
;
Разделитель частей шаблона
!
Подавляет все ведущие пробелы
/
На это место вставляется символ-разделитель Windows для даты
Для решения задачи ввода целых чисел имеет смысл использовать
специализированный редактор TMaskEdit вместо поля ввода TEdit, чтобы избежать
аварийного завершения программы при вводе пользователем строки, которая не
содержит правильного представления числа.
После размещения компонента TMaskEdit на форме и его активизации необходимо
раскрыть окно свойства EditMask (рис. 1) и в строке Input Mask ввести шаблон
#99999999;1;
В окошке Character for Blanks вместо умалчиваемого символа-заполнителя «_» надо
указать пробел и закрыть окно кнопкой «ОК».
Сформированная таким образом маска позволяет автоматически контролировать
ввод пользователя и отвергать любые символы, кроме знаков « + » или « - » в первой
позиции(элемент маски «#») и цифр (элемент «9»).
Рис. 1. Окно определения маски компонента MaskEdit
Для того чтобы при преобразовании строкового значения в числовое не возникали
ошибки от обрамляющих пробелов, используется стандартная функция Trim (строка),
которая возвращает строку-аргумент без обрамляющих пробелов, например, для целого
числа У, значение которого введено в компонент MaskEdit1, справедлива запись:
Y:= StrToInt (Trim (MaskEdit1.Text))
Компонент StringGrid ( страница Additional)
- пиктограмма на палитре компонентов
Компонент служит для представления текстовой информации в табличном виде и
предназначен для создания таблиц, в ячейках которых располагаются строковые типы данных.
Количество строк и столбцов – произвольное. На пересечении строк и столбцов находится
ячейка. Нумерация строк и столбцов таблицы начинается с нуля
Внешний вид компонента на форме представлен ниже:
StringGrid1
Координаты
ячейки [0.0]
Координаты
ячейки [0.0]
StringGrid2
По умолчанию ячейки недоступны для
ввода и редактирования. Если для
ячеек задан режим редактирования, то
на этапе выполнения программы
разрешается вводить и редактировать
данные, находящиеся в ячейке. (см.
свойство Options)
Таблица содержит две части
–
фиксированную – для показа заголовков столбцов и строк (рядов). Занимает левый
столбец и верхний ряд,
–
рабочую – для данных – остальная часть таблицы
Основные свойства компонента:
Cells [ACol ; ARow: integer] : String - определяет содержимое ячейки с
табличными координатами [ ACol ; ARow ]
ColCount
- количество столбцов таблицы (тип LongInt)
RowCount
- количество строк таблицы (тип LongInt)
Col
номер текущего столбца (для сфокусированной ячейки)
Row номер текущей строки (для сфокусированной ячейки)
Height высота таблицы
DefaultColWigth
ширина столбца ( 64 )
DefaultRowHeight высота строки ( 24 )
FixedColor цвет фиксированной зоны
FixedCols
количество фиксированных колонок
FixedRows количество фиксированных строк
Options
- опции для возможности редактирования
GoEditing
разрешено редактирование ячейки
GoTabs
- разрешено обходить ячейки клавишей TAB (Shift+Tab)
GoAlwaysShowEditor – разрешено редактировать сфокусированную
ячейку (должна быть включена опция GoEditing )
goColSizing и goRowSizing - Значение True дает возможность изменять ширину
столбца и высоту строки с помощью мышки.
Событие по умолчанию – OnClick
Пример
Заполнить 1-ую строку StringGrid1 значениями массива А( 2, 8, 0, -2 )
№ строк
0
Вид таблицы
1
1
2
3
4
5
2
8
0
-2
2
For I := 1 to 4 do
StringGrid1.Cells [ i,1 ] := inttostr ( a[ i ] ) ;
ИЗМЕНЕНИЕ РАЗМЕРА ТАБЛИЦЫ STRINGGRID1
Задать количество столбцов и строк для введенной размерности матрицы MxN
StringGrid1.ColCount := N + 1;
StringGrid1.RowCount := M + 1;
(если таблица имеет фиксированные столбцы
и строки)
Компонент DrawGrid
- пиктограмма на странице Additional
Компонент обеспечивает двумерное представление:
-Текстовых данных
- Изображения картинок
Состоит из фиксированной части и рабочей. Является Родителем для StringGrid
Содержание
1. Форма F O R M
2. Компонент Label – метка
3. Компонент Edit - однострочный редактор
4. Компонент Memo - многострочный редактор
5. Компонент Button - командная кнопка
6. Обработчик события Компонент «Кнопка с картинкой» - BitBtn
7. Компонент панель - Panel
8. Метка с бордюром для отображения текста StaticText
9. Компонент SpinEdit (страница Samples)
10.Компонент MaskEdit - «Специализированный редактор»
11.Компонент StringGrid ( страница Additional)
12.Компонент DrawGrid
Download