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

Материал из Викиучебника — открытых книг для открытого мира
Содержимое удалено Содержимое добавлено
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
{{К удалению}}
{{gui_nav|http://нет_источника/данная_статья_оригинал}}
ABCButtons - модуль для создания кнопок на PascalABC.Net.
ABCButtons - модуль для создания кнопок на PascalABC.Net.
=Использование ABCButtons=
=Использование ABCButtons=
ABCButtons довольно примитивный модуль , годен для создания только кнопок. Все программы, использующие модуль должны иметь следующий вид:
ABCButtons годен для создания только кнопок. Все программы, использующие модуль должны иметь следующий вид:
<source lang="pascal">
<source lang="pascal">
uses GraphABC, ABCButtons;
uses GraphABC, ABCButtons;
Строка 12: Строка 10:


=Класс ButtonABC=
=Класс ButtonABC=
ABCButton - класс кнопки.
ButtonABC - класс кнопки.
* Декларировать в секции var кнопку можно так:
* Декларировать в секции var кнопку можно так:
<source lang="Pascal">Button:ButtonABC;</source>
<source lang="Pascal">Button: ButtonABC;</source>
* Инициализировать с помощью new кнопку можно следующим образом:
* Инициализировать с помощью new кнопку можно следующим образом:
<source lang="pascal">Button:=new ButtonABC(x,y,w,h,t,c);</source>
<source lang="pascal">Button := new ButtonABC(x, y, w, h, t, c);</source>
x, y - координаты левого верхнего угла кнопки; w, h - ширина и высота кнопки соответственно; t - текст на кнопке; c - цвет кнопки.
x, y - координаты левого верхнего угла кнопки; w, h - ширина и высота кнопки соответственно; t - текст на кнопке; c - цвет кнопки.
{| class="wikitable sortable"
{| class="wikitable sortable"
Строка 40: Строка 38:
=Привязка обработчиков событий=
=Привязка обработчиков событий=
Чтобы выполнялась некоторая процедура при нажатии на кнопку пишите:
Чтобы выполнялась некоторая процедура при нажатии на кнопку пишите:
<source lang="pascal">a.OnClick:=p;
<source lang="pascal">a.OnClick :=np;
//Альтернативный вариант
//Альтернативный вариант:
A.OnClick+=p;
A.OnClick += p;
//Изъятие процедуры
//Изъятие процедуры:
A.OnClick-=p;
A.OnClick -= p;
</source>
</source>
a - имя кнопки, p - процедура, которая выполниться по нажатию на кнопку a.
A - имя кнопки, p - процедура, которая выполниться по нажатию на кнопку a.
=Пример=
* Если ваша процедура содержит бесконечный цикл,то все остальные кнопки на время выполнения цикла дизактивируються (не работают).
Вывод "Привет мир!" по щелчку на кнопку.
<source lang="pascal">
uses Crt, GraphABC, ABCButtons;
var
B: ButtonABC;
procedure P() := Writeln('Привет мир!');


=Окно GraphABC=
GraphABCWindow - класс графического окна.
{| class="wikitable sortable"
|-
! Процедура !! Значение
|-
| GraphABCWindow.<span style="color:green">'''SetSize'''(x,y)</span> || Устанавливает размер окна '''x'''<small>x</small>'''y''' в пикселях.
|-
| <span style="color:green">'''SetWindowIsFixedSize'''(x)</span> || Устанавливает, возможно ли изменять размер окна или нет.
<span style="color:purple">
* k=true - окно имеет фиксированный размер
* k=false - размер окна можно изменять
</span>
|}

=Пример программы=
* Вывод "Привет мир!" по щелчку на кнопку.
<source lang="pascal">
uses crt, GraphABC, ABCButtons;
var a:ButtonABC;
procedure p():=system.console.writeline('Привет мир!');
begin
begin
a:=new ButtonABC(0,0,100,40,'Button',clred);
B := new ButtonABC(0, 0, 100, 40, 'Button', clred);
a.OnClick:=p;
B.OnClick := p;
end.</source>
end.</source>

Версия от 03:39, 14 января 2018

ABCButtons - модуль для создания кнопок на PascalABC.Net.

Использование ABCButtons

ABCButtons годен для создания только кнопок. Все программы, использующие модуль должны иметь следующий вид:

uses GraphABC, ABCButtons;
var
//объявление кнопок
begin
end.

Класс 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 :=np;
//Альтернативный вариант:
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.