Событие Переменная

нажатие мыши OnMouseDown

отпускание мыши OnMouseUp

перемещение мыши OnMouseMove

нажатие клавиши OnKeyDown

отпускание клавиши OnKeyUp

нажатие символьной клавиши OnKeyPress

изменение размеров графического окна OnResize

закрытие графического окна OnClose

 

До начала работы программы эти переменные имеют нулевые значения.

Чтобы при возникновении некоторого события выполнить определенное действие, необходимо в программе присвоить процедурной переменной конкретную процедуру, выступающую в роли обработчика события. При возникновении одного из перечисленных выше событий проверяется, содержит ли соответствующая процедурная переменная ссылку на процедуру-обработчик, и если да, то данная процедура-обработчик вызывается.

Процедуры-обработчики имеют такие параметры:

OnMouseDown, OnMouseUp, OnMouseMove: - (x,y,mousebutton: integer);

OnKeyDown, OnKeyUp: - (key: integer);

OnKeyPress: - (ch: char);

OnResize, OnClose: - без параметров

Параметры x и y в обработчиках OnMouseDown, OnMouseUp и OnMouseMove определяют координаты курсора мыши в момент наступления события, параметр mousebutton равен 0, если кнопка мыши не нажата, 1, если нажата левая кнопка мыши, и 2, если нажата правая кнопка мыши. Параметр key в обработчиках OnKeyDownи OnKeyUp определяет виртуальный код нажатой клавиши. Параметр ch в обработчике OnKeyPress определяет нажатый символ. Если переменная-событие OnKeyPress имеет обработчик, то графическое окно не закрывается по нажатию клавиши Esc.

Например, если определена следующая процедура-обработчик, и в основной программе она привязана к соответствующей переменной-событию: OnMouseDown:=MouseDown; , то всякий раз при щелчке мышью в графическом окне в окно вывода будет выводиться 1.

Пример: Программа, осуществляющая движение графического окна с помощью клавиатуры.

uses GraphABC,Events;

procedure KeyDown(Key: integer); begin case Key of VK_Left: SetWindowLeft(WindowLeft-2); VK_Right: SetWindowLeft(WindowLeft+2); VK_Up: SetWindowTop (WindowTop-2); VK_Down: SetWindowTop (WindowTop+2); end; end; begin OnKeyDown:=KeyDown; end.  









Дата добавления: 2014-12-18; просмотров: 685;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.