77981

Кнопки. Диалоговые окна

Лекция

Информатика, кибернетика и программирование

Виды кнопок Кнопки TButton широко используются для управления программами представляет сабой командную кнопку на странице Stndrd. Определяет цвет стиль размер шрифта прилож Cncel: Boolen; Если имеет значение True событие OnClick кнопки возникает при нажатии клавиши Esc Defult: Boolen; Если имеет значение True событие OnClick кнопки возникает при нажатии клавиши Enter События OnClick Возникает при нажатии на кнопке В отличие от большинства других видимых компонентов кнопка TButton является компонентом самой Windows и...

Русский

2015-02-05

67.5 KB

0 чел.

Кнопки. Диалоговые окна

Для создания кнопок используют 3 компоненты TButton, TBitBtn, TSpeedButton.

На рисунке  22 представлены виды кнопок.

Рис  22 -  Виды кнопок

Кнопки TButton широко используются для управления программами, представляет сабой командную кнопку (на странице Standard).

Свойства и события  компоненты TButton  представлены в таблице 13:

Таблица  13 -  Свойства и методы компоненты TButton

Название

Назначение

Свойства

Name:string

Наименование компоненты (по умолчанию TButton1)

Caption : string

Наименование на кнопке

Visible: boolean

Кнопка видна или нет

Font: вложен.

Определяет цвет, стиль, размер шрифта (прилож 1)

Cancel: Boolean;

Если имеет значение True, событие OnClick кнопки возникает при нажатии клавиши Esc

Default: Boolean;

Если имеет значение True, событие OnClick кнопки возникает при нажатии клавиши Enter

События

OnClick

Возникает при нажатии на кнопке

В отличие от большинства других видимых компонентов кнопка TButton является компонентом самой Windows и поэтому не может изменять свой цвет произвольным образом - она его меняет вместе с изменением палитры Windows. Кнопка всегда имеет системный цвет clBtnFace и не имеет свойства Color. Шрифт надписи на кнопке может менять свой стиль и размер, но компонент игнорирует изменение его цвета.

Пиктографическая кнопка TBitBtn (на странице Additional) представляет собой популярную разновидность стандартной кнопки TButton. Ее отличительная особенность - свойство Glyph, с помощью которого определяется растровое изображение, рисуемое на поверхности кнопки. В состав поставки Delphi входит множество рисунков, разработанных специально для размещения в этих кнопках (по умолчанию для старших версий Delphi эти рисунки размещаются в папке program Files |Common Files | Borland Shared | Images | Buttons, для остальных версий - в папке images l Buttons каталога размещения Delphi).

Свойство Kind определяет одну из 11 стандартных разновидностей кнопки, показанных на рис. 23.

Нажатие любой из них, кроме bkCustom и bkHelp, закрывает модальное окно и возвращает в программу результат mrxxx: bkok - mrОk, bkCancel - mrCancel И Т. Д. Кнопка bkClose для модального окна возвращает mrCancel, а для главного окна программы - закрывает его и завершает работу программы. Кнопка bkHelp автоматически вызывает раздел справочной службы, связанный с Heipcontext формы, на которую она помещена. Если у кнопки была изменена пиктограмма Glyph, Delphi автоматически присвоит ей Kind=bkCustom. Это произойдет также в случае, когда кнопка указана как умалчиваемая (Defauit=True), но Kind не содержит bkok или bkYes, а также если ее свойство Cancel содержит True, a Kind нe содержит bkCancel или bkNo.

Рис. 23 -  Разновидности кнопок TBitBtn

Свойства Cancel, Default и ModalResult кнопка TBitBtn унаследовала у своего родительского класса TButton, остальные специфичные свойства указаны ниже (таблица 14).

Таблица 14 -  Свойства и методы компоненты TBitbtn

Название

Назначение

Свойства

Name:string

Наименование компоненты (по умолчанию TBitBtn1)

Glyph: TBitmap

Определяет от 1 до 4 связанных с кнопкой растровых изображения

Kind: TBitBtnKind;

Определяет разновидность кнопки

Layout: TButtonLayout;

Определяет край кнопки, к которому прижимается пиктограмма: bIGlyphLeft - к левому; bIGlyphRight - к правому; bIGlyphTop - к верхнему;biGlyphBottom - к нижнему)

Margin: Integer;

Определяет расстояние в пикселях от края кнопки до пиктограммы

NumGlyphs: TNumGlyphs;

Определяет количество растровых изображений

Style: TButtonStyle;

Определяет стиль оформления кнопки, зависящий от операционной системы.

 Как и в кнопках TButton, программист не может управлять цветом поверхности кнопки, но в отличие от TButton может менять цвет надписи на ней. С помощью свойства Default кнопку можно сделать умалчиваемой - в этом случае нажатие Enter автоматически вызывает обработчик ее события OnClick. Однако умалчиваемыми можно сделать только кнопки bkYes и bkNo, остальные значения свойства Kind будут заменяться на bkcustom при размещении в Default значения True и наоборот - в Default автоматически помещается False при установке в Kind любого значения, кроме bkYes, bkNo или bkCustom.

TSpeedButton (на странице Additional) - кнопка для инструментальных панелей.

Кнопки TSpeedButton отличаются от TBitBtn тремя обстоятельствами: во-первых, они могут фиксироваться в утопленном состоянии, во-вторых, они не могут закрыть модальное окно в третьих, они не могут быть умалчиваемыми. Во всем остальном они повторяют свойства и методы TBitBtn.

Для фиксации кнопка должна быть отнесена к какой-либо группе кнопок (эта группа может состоять из нее одной - вариант одиночной фиксируемой кнопки). Для этого используется свойство GroupIndex: Integer, которое не должно быть равно 0. Поведение кнопки определяется логическим свойством AllowAllup: если это свойство имеет значение True, утопленная кнопка отпускается только при нажатии любой другой кнопки, входящей в ту же группу; если AllowAllup=False, кнопку можно освободить повторным щелчком. Индикатором состояния кнопки служит логическое свойство Down, которое имеет значение True, если кнопка утоплена. Свойство доступно для записи, что позволяет изменять состояние кнопки программно.

Для кнопки TSpeedButton предусмотрено событие onDbiciick, которое возникает при двойном щелчке на утопленной кнопке.


 

А также другие работы, которые могут Вас заинтересовать

73895. Электронная тепловая поляризация 123.69 KB
  Тензоры упругости и податливости Приложенные извне механические напряжения Х упруго и обратимо изменяют форму кристалла происходит его деформация х. Поскольку xmn и Xmn тензоры второго ранга в анизотропных кристаллах или текстурах можно ожидать что каждая из девяти компонентов деформаций xkp индуктирована девятью компонентами тензора напряжения...
73896. Виникнення класичної буржуазної політичної економії в Англії. 32.5 KB
  Петті Уільям Петті 1623 1687 основоположник класичної політичної економії в Англії. Петті є неоднозначною. У своїх працях особливо ранніх Петті віддає данину меркантилізму. Отже на відміну від меркантилістів які використовували емпіричний описовий метод Петті заклав основи абстрактного методу в політичній економії.
73897. Зародження і проблеми суперечливого розвитку класичної буржуазії політекономії у Франції. 29.5 KB
  Буагільбер У XVII ст. Пєр де Буагільбер 1646 1714 засновник класичної політичної економії у Франції народився в Руані в дворянській сім'ї здобув гарну освіту займався певний час літературною діяльністю потім юриспруденцією. Особливості економічного розвитку Франції позначилися на формуванні економічних поглядів Буагільбера. 1696 Роздрібна торгівля Франції 1699 Міркування про природу багатства грошей і податків 1707 та інших Буагільбер виступає з гострою критикою меркантилізму.
73898. Виникнення політичної економії в Німеччині. Ф. Ліст, “Стара і нова” історичні школи В. Рошер, К. Кніс, Б. Гільдебранд, Г. Шмолер, В. Зомбард, Брентано 50.5 KB
  Німеччина XIX ст. — це країна, що складалася з політично й економічно відособлених держав, обєднаних у конфедерацію за національною ознакою. їхня економічна відособленість базувалась на феодальних відносинах
73899. Економічна думка Давньої Греції. 34.5 KB
  Проте Ксенофонт як захисник натурального господарства все ж помітив зрослий поділ праці в суспільстві хоча й заперечував об'єктивний недолік який випливав звідси потребу розгортання товарногрошових відносин. Зрівняльний розподіл у філософів та воїнів поєднувався з широким розподілом праці між всіма громадянами. Численні його праці охоплюють найрізноманітніші галузі знання: логіку психологію риторику етику поетику економіку фізику зоологію. Серед визначних його відкриттів у галузі економіки аналіз розвитку форм вартості в...
73900. Начала політичної економії та оподаткування 33 KB
  Давід Рікардо 17721823 рр. Рікардо покладена теорія вартості визначення вартості товару робочим часом. Рікардо і проблему усереднення прибутку та впливу застосованого капіталу на ціноутворення. Рікардо є те що він як і багато його попередників ототожнював робочу силу як товар з його функцією працею.
73901. Економічна думка в Україні в демографічний період 19 століття 45 KB
  Загострення кризи кріпосницької системи зростання селянських заворушень стали поштовхом для розвитку антикріпосницького руху. Значна частина членів товариства яка стояла на ліберальних позиціях заперечувала революційну боротьбу і виступала за еволюційний шлях розвитку. Каразін розробляє проекти господарського розвитку країни в цілому. Каразін прихильник розвитку різних галузей вітчизняної промисловості він закликає дворян організовувати промислові підприємства та сприяє наданню їм фінансової допомоги.
73902. Электроника, конспект лекций. Усилители 8.76 MB
  Загострення кризи кріпосницької системи зростання селянських заворушень стали поштовхом для розвитку антикріпосницького руху. Значна частина членів товариства яка стояла на ліберальних позиціях заперечувала революційну боротьбу і виступала за еволюційний шлях розвитку. Каразін розробляє проекти господарського розвитку країни в цілому. Каразін прихильник розвитку різних галузей вітчизняної промисловості він закликає дворян організовувати промислові підприємства та сприяє наданню їм фінансової допомоги.
73903. Економічне вчення фізіократії. Ф.Кене. А.Р.Ж.Тюрб 49 KB
  Фізіократи — французькі економісти другої половини XVIII ст., представники класичної політичної економії. Поява школи фізіократів зумовлена соціально-економічними умовами тогочасної Франції