Введение в ABCButtons: различия между версиями

Материал из Викиучебника — открытых книг для открытого мира
Содержимое удалено Содержимое добавлено
Нет описания правки
Метка: редактор вики-текста 2017
Строка 1: Строка 1:
ABCButtons - учебный модуль PascalABC.NET для создания кнопок для GraphABC-приложений. Основан на устаревшем модуле ABCObjects.
ABCButtons - модуль для создания кнопок на PascalABC.Net.
=Класс ButtonABC=

ButtonABC - класс кнопки.
=Основные классы=
* Декларировать в секции var кнопку можно так:
ABCButtons содержит следующие классы:
<syntaxhighlight lang="Pascal">Button: ButtonABC;</syntaxhighlight>
# '''ButtonABC''' (кнопка)
* Инициализировать с помощью new кнопку можно следующим образом:

<syntaxhighlight lang="pascal">Button := new ButtonABC(x, y, w, h, t, c);</syntaxhighlight>
==ButtonABC==
x, y - координаты левого верхнего угла кнопки; w, h - ширина и высота кнопки соответственно; t - текст на кнопке; c - цвет кнопки.
ButtonABC - класс кнопки. Для ее создания пишите:
<syntaxhighlight lang="pascal">new Button({x}, {y}, {width}, {height}, {text}, {color});</syntaxhighlight>
, заменив '''{x}''' на x-координату кнопки, '''{y}''' на y-координату кнопки, '''{width}''' на ширину кнопки, '''{height}''' на высоту кнопки, '''{text}''' на текст кнопки и '''{color}''' на цвет кнопки.

{| class="wikitable sortable"
{| class="wikitable sortable"
|-
|-
! Свойство !! Значение
! Свойство !! Значение
|-
|-
| '''Text''' || Текст на кнопке.
| Text || Текст на кнопке.
|-
|-
| '''Filled''' || Заполнена ли цветом кнопка (true, false).
| Filled || Заполнена ли цветом кнопка (true, false).
|-
|-
| '''Color''' || Цвет внутренности кнопки.
| Color || Цвет внутренности кнопки.
|-
|-
| '''FontColor''' || Цвет текста кнопки.
| FontColor || Цвет текста кнопки.
|-
|-
| '''Visible''' || Видимость кнопки (true, false).
| Visible || Видимость кнопки (true, false).
|-
|-
| '''TextVisible''' || Видимость текста на кнопке (true, false).
| TextVisible || Видимость текста на кнопке (true, false).
|}
|}

=Курсор=
Параметры x и y в обработчиках OnMouseDown, OnMouseUp и OnMouseMove определяют координаты курсора мыши в момент наступления события.

=Привязка обработчиков событий=
Чтобы выполнялась некоторая процедура при нажатии на кнопку пишите:
<syntaxhighlight lang="pascal">
A.OnClick := p;
//Альтернативный вариант:
A.OnClick += p;
//Изъятие процедуры:
A.OnClick -= p;
</syntaxhighlight>
A - имя кнопки, p - процедура, которая выполниться по нажатию на кнопку a.

=Пример=
Вывод "Привет мир!" по щелчку на кнопку.
<syntaxhighlight lang="pascal">
uses Crt, GraphABC, ABCButtons;
var
B: ButtonABC;

procedure P() := Writeln('Привет мир!');

begin
B := new ButtonABC(0, 0, 100, 40, 'Button', clRed);
B.OnClick := P;
end.</syntaxhighlight>


=Ссылки=
=Ссылки=
[[Книга программиста/Графика в PascalABC.Net|Примеры]]
[[Книга программиста/Графика в PascalABC.Net#Простой таймер|Создание таймера с помощью ABCButtons]]

Версия от 05:06, 5 июля 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.

Ссылки

Создание таймера с помощью ABCButtons