§ 3. Проектирование интерфейса оконного приложения с использованием элементов управления
3.2. Элемент управления Button (кнопка)
Компонент Button (кнопка) относится к элементам управления. На панели компонентов Standard кнопка изображена в виде , имя объекта — Button. Кнопка, помещенная на форму, получает имя ButtonN, где N — номер 1, 2, 3… (пример 3.4). При необходимости кнопку можно переместить в любое место формы. Ключевые точки позволят установить нужный размер кнопки. Некоторые свойства компонента Button перечислены в таблице (пример 3.5). Как видно из таблицы, многие свойства кнопки совпадают по именам и назначениям со свойствами формы, поэтому в дальнейшем для компонентов будут указываться только те свойства, которые отличны от уже описанных для других компонентов. Основным событием компонента Button является OnClick. Для создания обработчика события OnClick для кнопки можно поступить так же, как и при создании аналогичного обработчика для формы: выбрать событие на вкладке Events и выполнить двойной щелчок в поле напротив события OnClick. Можно просто выполнить двойной щелчок по кнопке. (Для формы основным событием является событие OnCreate, поэтому при двойном щелчке по форме создается обработчик события OnCreate) Пример 3.6. Создать проект, разместив на форме две кнопки. При нажатии на одну из них цвет формы должен измениться на синий, а при нажатии на вторую — должен восстановиться исходный цвет. Этапы выполнения задания
|
Пример 3.4. Компонент Button на форме: Пример 3.5. Свойства компонента Button.
Пример 3.6. Внешний вид формы в режиме конструктора дизайна: Внешний вид формы при выполнении: Кроме кнопок Button в Delphi применяются кнопки и , расположенные на палитре компонентов Additional. Кнопки BitBtn — кнопки с изображением. Свойство Kind данного объекта позволяет выбрать кнопку с одним из стандартных изображений. Кнопки SpeedBtn (кнопки с фиксацией и графикой) применяются тогда, когда требуется фиксация нажатого состояния. Свойство Glyph позволяет вставить изображение из файла на кнопках BitBtn и SpeedBtn. |