Заочное дистанционное образование с получением государственного диплома через Internet










Получить информацию о поступлении
 
Главная Новости Карта сайта Фотоальбом Гостевая книга Контакты

{LTS}

 

Работа с кнопками

Кнопки являются элементами управления и служат для выдачи команд на выполнение определенных функциональных действий. Существует несколько видов кнопок в Delphi:
- стандартная кнопка Button;
- кнопка BitBtn с рисунком;
- кнопка SpeedButton быстрого доступа.

Кнопка Button имеет на поверхности надпись (назначение кнопки) – это свойство Caption. В надписях кнопок можно предусматривать использование клавиш ускоренного доступа, выделяя для этого один из символов надписи. Перед символом, который должен соответствовать клавише ускоренного доступа, ставится символ амперсанта «&». Этот символ не появляется в надписи, а следующий за ним символ оказывается подчеркнутым. Тогда пользователь может вместо щелчка на кнопке нажать в любой момент клавишу Alt совместно с клавишей выделенного символа.

Основным для кнопки событием является событие OnClick, возникающее при ее нажатии.

Свойство Cancel, если его установить в true, определяет, что нажатие пользователем клавиши Esc будет эквивалентно нажатию на данную кнопку. Это свойство целесообразно задавать равным true для кнопок «Отменить» в различных диалоговых окнах, чтобы можно было выйти из диалога, нажав на эту кнопку или нажав клавишу Esc.

Свойство Default, если его установить в true, определяет, что нажатие пользователем клавиши ввода Enter будет эквивалентно нажатию на данную кнопку, даже если данная кнопка в этот момент не находится в фокусе. Правда, если в момент нажатия Enter в фокусе находится другая кнопка, то все-таки сработает именно кнопка в фокусе.

Кнопка с рисунком отличается от стандартной кнопки тем, что кроме заголовка на кнопке может отобразиться растровое изображение.

Свойство Glyph определяет растровый рисунок кнопки (формат bmp). По умолчанию кнопка не содержит рисунок. Delphi поставляется большое количество изображений для кнопок. Они расположены в каталоге ImagesButtons, а сам каталог Images расположен в каталоге program filescommon filesborland shared.

Расположение изображения и надписи на кнопке определяется свойствами Margin, Layout и Spacing. Если свойство Margin равно -1 (значение по умолчанию), то изображение и надпись размещаются в центре кнопки. При этом положение изображения но отношению к надписи определяется свойством Layout, которое может принимать значения: blGlyphLeft (слева, это значение принято по умолчанию), blGlyphRight (справа), blGlyphТор (вверху), blGlyphBottom (внизу). Если же Margin > 0, то в зависимости от значения Layout изображение и надпись смещаются к той или иной кромке кнопки, отступая от нее на число пикселей, заданное значением Margin.

Свойство Spacing задает число пикселей, разделяющих изображение и надпись на поверхности кнопки. По умолчанию Spacing = 4. Если задать Spacing = 0, изображение и надпись будут размещены вплотную друг к другу. Если задать Spacing = -1, то текст появится посередине между изображением и краем кнопки.

Еще одно свойство BitBtn – свойство Kind определяет тип кнопки. По умолчанию значение этого свойства равно bkCustom – заказная. Но можно установить и множество других предопределенных типов: bkOK, bkCancel, bkHelp, bkYes, bkNo, bkClose, bkAbort, bkRetry, bkIgnore, bkAll. В этих типах уже сделаны соответствующие надписи, введены пиктограммы, заданы еще некоторые свойства.

Кнопки SpeedButton имеют возможность отображения пиктограмм и могут использоваться как обычные управляющие кнопки. Обычно они используются в качестве быстрых кнопок, дублирующих различные команды меню, и в инструментальных панелях, в которых требуется фиксация нажатого состояния.

У кнопок SpeedButton, как и у других кнопок, имеется свойство Caption – надпись, но в этих кнопках оно обычно оставляется пустым, так как вместо надписи используется пиктограмма.

Изображение на кнопке задается свойством Glyph. И точно так же свойство NumGlyphs определяет число используемых пиктограмм, свойства Layout и Margin определяют расположение изображения, а свойство Spacing – расстояние между изображением и надписью.

Кнопка может использоваться как переключатель. Поэтому, кроме обычного и нажатого состояний, она имеет третье состояние – утопленное, или выбранное (включенное). Включена кнопка или нет, определяет свойство Down (значение true – кнопка выбрана).

Все быстрые кнопки объединяются в группы. Принадлежность кнопки к группе определяет свойство GroupIndex. По умолчанию свойство имеет нулевое значение, и кнопка не относится к группе.

Если кнопка не входит в группу, то она не может работать как переключатель и находится в выбранном состоянии. Если есть несколько кнопок, имеющих одинаковое ненулевое значение GroupIndex, то они образуют группу взаимосвязанных кнопок из которых нажатой может быть только одна. Если одна кнопка находится в нажатом состоянии и пользователь щелкает на другой, то первая кнопка освобождается, а вторая фиксируется в нажатом состоянии. Поведение нажатой кнопки при щелчке на ней зависит от значения свойства AllowAllUp. Если оно равно true, то кнопка освободится, поскольку в этом случае возможно состояние, когда все кнопки группы отжаты. Если же AllowAllUp равно false, то щелчок на нажатой кнопке не приведет к изменению вида кнопки.

Если Grouplndex > 0 и AllowAllUp (разрешение отжатого состояния всех кнопок группы) = true, то кнопка при щелчке пользователя на ней погружается и остается в нажатом состоянии. При повторном щелчке пользователя на кнопке она освобождается и переходит в нормальное состояние.


Узнать как сэкономить в кризис моно на сайте ekonom-it.ru

События компонента Form  Структура проекта в среде Delphi Описание главного модуля проекта Описание модулей форм проекта Переключатели и флажки в Delphi Простой и комбинированный списки Опиание классов в Delphi 7 Поля, свойства и методы класса Одномерные и многомерные массивы (задание 1) Одномерные и двумерные массивы (задание 2) 


 
     
   
 


Приглашаем принять участие в круглом столе!
подробнее   >>>
 

Институт Менеджмента, Экономики и Инноваций начинает набор на курсы повышения квалификации!
подробнее   >>>
 

Уважемые студенты АНО ВПО ИМЭиИ!
подробнее   >>>
 

Начинается набор на курсы повышения квалификации!
подробнее   >>>
 

Приглашаем принять участие в конференциях!
подробнее   >>>
 


все новости...

 


Рассылки Subscribe.Ru
Современное образование
Подписаться письмом