Введение в ABCButtons: различия между версиями
Содержимое удалено Содержимое добавлено
DannyS712 (обсуждение | вклад) м <source> -> <syntaxhighlight> (phab:T237267) |
|||
Строка 3: | Строка 3: | ||
ButtonABC - класс кнопки. |
ButtonABC - класс кнопки. |
||
* Декларировать в секции var кнопку можно так: |
* Декларировать в секции var кнопку можно так: |
||
< |
<syntaxhighlight lang="Pascal">Button: ButtonABC;</syntaxhighlight> |
||
* Инициализировать с помощью new кнопку можно следующим образом: |
* Инициализировать с помощью new кнопку можно следующим образом: |
||
< |
<syntaxhighlight lang="pascal">Button := new ButtonABC(x, y, w, h, t, c);</syntaxhighlight> |
||
x, y - координаты левого верхнего угла кнопки; w, h - ширина и высота кнопки соответственно; t - текст на кнопке; c - цвет кнопки. |
x, y - координаты левого верхнего угла кнопки; w, h - ширина и высота кнопки соответственно; t - текст на кнопке; c - цвет кнопки. |
||
{| class="wikitable sortable" |
{| class="wikitable sortable" |
||
Строка 29: | Строка 29: | ||
=Привязка обработчиков событий= |
=Привязка обработчиков событий= |
||
Чтобы выполнялась некоторая процедура при нажатии на кнопку пишите: |
Чтобы выполнялась некоторая процедура при нажатии на кнопку пишите: |
||
< |
<syntaxhighlight lang="pascal"> |
||
A.OnClick := p; |
A.OnClick := p; |
||
//Альтернативный вариант: |
//Альтернативный вариант: |
||
Строка 35: | Строка 35: | ||
//Изъятие процедуры: |
//Изъятие процедуры: |
||
A.OnClick -= p; |
A.OnClick -= p; |
||
</syntaxhighlight> |
|||
</source> |
|||
A - имя кнопки, p - процедура, которая выполниться по нажатию на кнопку a. |
A - имя кнопки, p - процедура, которая выполниться по нажатию на кнопку a. |
||
=Пример= |
=Пример= |
||
Вывод "Привет мир!" по щелчку на кнопку. |
Вывод "Привет мир!" по щелчку на кнопку. |
||
< |
<syntaxhighlight lang="pascal"> |
||
uses Crt, GraphABC, ABCButtons; |
uses Crt, GraphABC, ABCButtons; |
||
var |
var |
||
Строка 50: | Строка 50: | ||
B := new ButtonABC(0, 0, 100, 40, 'Button', clRed); |
B := new ButtonABC(0, 0, 100, 40, 'Button', clRed); |
||
B.OnClick := P; |
B.OnClick := P; |
||
end.</ |
end.</syntaxhighlight> |
||
=Ссылки= |
=Ссылки= |
Версия от 15:54, 16 апреля 2020
ABCButtons - модуль для создания кнопок на PascalABC.Net.
Класс ButtonABC
ButtonABC - класс кнопки.
- Декларировать в секции var кнопку можно так:
Button: ButtonABC;
- Инициализировать с помощью new кнопку можно следующим образом:
Button := new ButtonABC(x, y, w, h, t, c);
x, y - координаты левого верхнего угла кнопки; w, h - ширина и высота кнопки соответственно; t - текст на кнопке; c - цвет кнопки.
Свойство | Значение |
---|---|
Text | Текст на кнопке. |
Filled | Заполнена ли цветом кнопка (true, false). |
Color | Цвет внутренности кнопки. |
FontColor | Цвет текста кнопки. |
Visible | Видимость кнопки (true, false). |
TextVisible | Видимость текста на кнопке (true, false). |
Курсор
Параметры x и y в обработчиках OnMouseDown, OnMouseUp и OnMouseMove определяют координаты курсора мыши в момент наступления события.
Привязка обработчиков событий
Чтобы выполнялась некоторая процедура при нажатии на кнопку пишите:
A.OnClick := p;
//Альтернативный вариант:
A.OnClick += p;
//Изъятие процедуры:
A.OnClick -= p;
A - имя кнопки, p - процедура, которая выполниться по нажатию на кнопку a.
Пример
Вывод "Привет мир!" по щелчку на кнопку.
uses Crt, GraphABC, ABCButtons;
var
B: ButtonABC;
procedure P() := Writeln('Привет мир!');
begin
B := new ButtonABC(0, 0, 100, 40, 'Button', clRed);
B.OnClick := P;
end.