* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна!
Компоненты
31 марта 2009
Компонент — это объект, представляющий собой отдельный строительный блок программы во время проектирования. Компонент является более широким понятием, чем используемое в Windows понятие элемент управления. Как и элемент управления, компонент способен принимать и обрабатывать сообщения Windows. Стандартные компоненты Стандартными компонентами называются такие компоненты, которые наиболее часто используются для создания графического интерфейса пользователя. Из них со- ставляют довольно сложные комбинации, которые выделяются в отдельные группы графического интерфейса. По своему внутреннему содержанию они могут быть до- вольно сложными. Форму тоже можно рассматривать как компонент, хотя ее пикто- грамма отсутствует в палитре компонентов. Стандартные компоненты выделены в от- дельную группу в окне Tool Palette. Рассмотрим несколько стандартных компонентов. Компонент TLabel Компонент TLabel .(Надпись) используется для отображения текста в форме, при- р чем этот текст нельзя изменять непосредственно через графический интерфейс поль- зователя, хотя в программе при необходимости можно предусмотреть изменение над- писи. Рассмотрим методику работы с надписями. Выполните следующие действия. 1. Создайте новый проект типа VCL Forms Application.
2. Поместите надпись в форму. Для этого в окне Tool Palette найдите группу Standard и дважды щелкните кнопкой мыши на компоненте TLabel. Можно щелкнуть один раз, а затем щелкнуть в нужном месте формы. При этом сразу можно задать необходимые размеры, наводя указатель мыши на ограничиваю- щие квадраты и перемешая их при нажатой левой кнопке мыши на нужное расстояние. Чтобы удалить надпись из формы, выделите ее (щелкните на ней мышью, при этом она выделится черными квадратиками) и нажмите клавишу <Delete>. Удаление можно выполнить также с помощью контекстного меню, если щелкнуть правой кнопкой мыши на объекте. Чтобы отменить выделение, щелкните кнопкой мыши в любом месте за пределами надписи. Поэкспери- ментируйте с размещением и удалением надписей. 3. Переместите надпись в другое место формы методом перетаскивания. Для этого установите указатель мыши на надписи, щелкните кнопкой мыши и, удерживая ее нажатой, передвиньте надпись в другое место. Когда надпись займет нужное положение, отпустите кнопку мыши. Обратите внимание на то, что при перетас- кивании объекта фаницы надписи будут привязаны к разметочной сетке формы. 4. Измените значение свойства надписи Name (Имя) на MyFirstLabel (по умолча- нию она называлась Labell). Для этого в инспекторе объектов щелкните на свойстве Name (Имя) и введите строку "MyFirstLabel". Убедитесь, что вы изме- няете свойство надписи, а не формы (это типичная ошибка новичков). Для этого надпись в форме должна быть выделена, а в раскрывающемся списке в верхней части инспектора объектов должен быть выбран объект Labell: TLabel (когда вы измените имя надписи, там будет написано MyFirstLabel: TLabel). После ввода нужного имени надписи зафиксируйте его, нажав клавишу <Enter>. 5. Измените саму надпись. Для этого выберите в инспекторе объектов свойство Caption (в данном случае можно перевести как надпись), введите новую строку "Моя первая надпись!" и нажмите клавишу <Enter>. Введенный текст появится в форме. Обратите внимание, как изменяются фаницы надписи. Это связано со свойством AutoSize (Подгонка размера). Если установить свойство AutoSize в состояние False, то автоматического изменения границ происходить не бу- дет. Границы можно изменять вручную. Для этого выделите объект и наведите курсор мыши на одну из черных меток границы. Когда он примет вид двуна- правленной стрелки, нажмите кнопку мыши и задайте необходимые размеры. 6. Измените цвет фона надписи. Для этого выберите свойство Color (Цвет), щелкни- те на стрелке, выберите в раскрывшемся списке желтый цвет и щелкните на нем. 7. Измените шрифт и цвет текста надписи. Для этого выберите свойство Font (Шрифт) и щелкните на кнопке с тремя точками. В поле Font измените шрифт на Arial, стиль на Bold I t a l i c , а размер на 32. В раскрывающемся списке выберите красный цвет и щелкните на кнопке ОК. 8. Добавьте к форме еще одну надпись. На этот раз воспользуйтесь другим мето- дом — щелкните на компоненте TLabel, переместите указатель мыши в произ- вольное место формы и еще раз щелкните кнопкой мыши. При этом в форме в том месте, где находился указатель мыши, должна появиться новая надпись. 9. Измените значение свойства Name новой надписи на MySecondLabel, а значе- ние свойства Caption — на "Моя вторая надпись!". 10. Сделайте видимой панель Align и выделите в форме надписи, для чего обведите их на форме указателем мыши при нажатой левой кнопке. Используйте раз- личные способы выравнивания из панели Align и оцените результат. 11. Теперь выделите форму, для чего щелкните в любом месте формы за пределами надписей. 12. Измените свойства формы: свойству Name задайте значение LabelExample, а свойству Caption — значение Надпись. Итак, вы создали простое приложение, которое, правда, пока что ничего по- лезного не делает. Выполните его. Это можно сделать одним из трех способов: щелкнув на пиктограмме Run (Выполнить) из панели отладки, выбрав в глав- ном меню команду Run => Run или нажав клавишу <F9>. При этом на экране должна появиться форма, как показано на рис. 1.7. 14. Щелкните на кнопке закрытия окна в верхнем правом углу и завершите при- ложение. Это же можно сделать и в среде Delphi, используя команду Run^Program Reset (Выполнить^Переустановка программы) или нажав ком- бинацию клавиш <Ctrl+F2>. Все слова и тексты, которые отображаются на экране, можно вводить на русском языке. Все идентификаторы, которые применяются непосредственно в программе, должны использовать только английский алфавит. Компонент TEdit В компоненте TEdit (Поле ввода) хранится текст, который можно помещать в анный компонент как во время разработки, так и во время выполнения. Текст, ви- димый в поле ввода, является значением свойства Text. Свойство MaxLength (Макси- мальная длина) определяет максимальное количество символов в поле ввода. Если значение свойства MaxLength равно 0, то количество символов ничем не ограничено. С помощью свойства Font можно устанавливать шрифт текста. Если свойство Readonly (Только чтение) установить в True, то во время выполнения программы пользователь не сможет изменять текст поля ввода. Для лучшего понимания работы поля ввода выполните следующее. 1. Создайте новый проект типа VCL Forms Application. 2. Разместите компонент TEdit в форме. Компонент TEdit находится в группе Standard, как и надпись. Размещение также можно сделать несколькими способами. 3. Измените размер поля ввода. Для этого установите указатель мыши на одном из черных квадратиков и, удерживая кнопку мыши нажатой, переместите чер- ный квадратик (а с ним и границу поля ввода) в нужном направлении. Устано- вив необходимый размер, отпустите кнопку мыши. 4. Переместите поле ввода в нужное место методом перетаскивания, так же, как это делалось с надписью. 5. Установите значение свойства Name на MyText. Для этого в инспекторе объек- тов щелкните на свойстве Name и введите строку "MyText". Как и в случае с надписью, убедитесь, что вы изменяете свойство поля ввода, а не формы. Для этого в заголовке поля выбора в верхней части инспектора объектов должно быть написано E d i t l : TEdit. Выберите в инспекторе объектов свойство Text и введите его новое значение. Нажав клавишу <Enter>, зафиксируйте введенный текст. Обратите внимание: во время ввода изменяется текст в поле ввода формы. 7. Измените цвет текста в поле ввода на синий. Для этого в инспекторе объектов щелкните на значке "+" рядом со свойством Font. При этом значок "+" изме- няется на "—", и появляется список свойств объекта Font, который в данном случае сам используется как свойство. Выберите свойство Color и щелкните на стрелке, расположенной в этом поле. При этом раскрывается список доступных цветов. Найдите в нем синий цвет и щелкните на нем. 8. Выделите форму. Измените значение свойства Name формы на EditBoxExample, а значение свойства Caption — на Поле ввода. 9. Нажав клавишу <F9>, запустите разработанную программу. При этом на экране появится изображение, показанное на рис. 1.8. В отличие от надписи, текст в поле ввода можно изменять, запоминать и извлекать из буфера обмена. Но после установки значения True для свойства Readonly изменять содержимое поля ввода через графический интерфейс пользователя уже будет нельзя. Зна- чение свойства Readonly можно менять из программы, запрещая или разрешая таким образом пользователю вводить данные. 10. Завершите приложение.