Базовые события объектов библиотеки визуальных компонентов




событие описание
OnChange Генерируется при изменении значения объекта. Это событие определено для большинства компонентов и генерируется, как правило, в результате изменения базового свойства.
OnCreate Генерируется при создании формы
OnClose Генерируется при закрытии формы
OnCloseQuery Генерируется перед закрытием формы
OnEnter Генерируется при получении объектом фокуса ввода
OnExit Генерируется при потере объектом фокуса ввода
OnActivate Генерируется при активации приложения или формы
OnDblClick Генерируется при двойном щелчке мыши на объекте
OnDeactivate Генерируется при деактивации приложения или потере формой фокуса ввода
OnDragDrop Генерируется при перемещении объекта с помощью мыши после того, как будет отпущена кнопка мыши. Объект может принять перетаскиваемый объект только в том случае, если параметр Accept события или OnDragOver имеет значение True.
OnOnDragOver Генерируется при перемещении объекта с помощью мыши, когда перетаскиваемый объект находится над элементом управления, для которого возбуждено событие.
OnEndDrag Генерируется после окончания процесса перемещения объекта с помощью мыши
OnException Генерируется при возбуждении исключения
OnHelp Генерируется при запросе на получение справочной информации
OnHint Генерируется при попадании указателя мыши на объект
OnIndl Событие возбуждается для неактивного приложения, находящегося в режиме ожидания. Частота возбуждения события зависит от приоритета ожидания приложения, определяемого операционной системой.
OnKeyDown, OnKeyPress, OnKeyUp Событие, генерирующиеся при использовании клавиш и их сочетаний. Сначала (при нажатии клавиш и их сочетаний) возбуждается событие OnKeyDown, а затем (при отпускании клавиш) возбуждается событие OnKeyUp. Событие OnKeyPress генерируется для символьных клавиш.
OnMinimize Генерируется при сворачивании окна приложения до размера кнопки панели задач Windows
OnMouseDown, OnMouseUp Генерируется при использовании мыши: OnMouseDown – при нажатии, OnMouseUp – при отпускании.
OnMouseMove Генерируется при перемещении мыши
OnPaint Генерируется при перерисовке формы
OnRestore Восстановление окна приложения из свернутого состояния до нормального размера
OnStartDrag Генерируется в начале процесса перемещения объекта с помощью мыши, когда перетаскиваемый объект выделен, а левая кнопка мыши нажата и удерживается
OnTimer Генерируется через заданные промежутки времени

 

Разберем на примерах некоторые события:

События от клавиатуры

Библиотека визуальных компонентов (VCL) реализует три обработчика события, предназначаемых для контроля за вводом данных пользователя с клавиатуры:

OnKeyDown

OnKeyPress

OnKeyUp.

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

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

Begin

{проверка нажатия сочетания клавиш Alt+Ctrl}

if (shift =([ssAlt, ssCtrl])) then form1.color:= clAqua;

if (shift =([ssShift, ssCtrl])) then form1.color:= clRed;

if (shift =([ssAlt, ssCtrl])) then form1.color:= clGreen;

if (shift =([ssAlt,ssCtrl,ssShift])) then form1.color:= clBlue;

end;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;

Shift: TShiftState);

Begin

form1.Caption:='Привет!!!';

end;

Значение Описание
ssShift Нажата клавишаShift.
ssAlt Нажата клавишаAlt
ssCtrl Нажата клавиша Ctrl
ssLeft Нажата клавиша левая кнопка мыши
ssRight Нажата клавиша правая кнопка мыши
ssMiddle Нажата клавиша средняя кнопка мыши
ssDouble Выполнен двойной щелчок

 

Для символьных клавиш генерируется событие OnKeyPress.

Пример.

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

Begin

if not (Key in ['0'..'9',#8]) then Key:=#0;

end;

 

События от мыши

В VCL-библиотеке предопределено три обработчика события для действий с мышью:

OnMouseDown–произошло нажатие кнопки мыши;

OnMouseMove–кнопка мыши отпущена;

OnMouseUp –выполняется перемещение мыши.

Процедуры обработки этих событий используют следующие параметры:

Sender – объект, для которого выполняются действия мыши;

Button–указывает нажатую кнопку мыши: mbLeft, mbMiddle или mbRight;

Shift – указывает, были ли нажаты клавиши Alt, Ctrl и Shift;

X,У–координаты точки, в которой произошло событие.

Пример:

{Отображение строки текста в том месте формы, в котором была нажатакнопка мыши}

procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);

Begin

Canvas.TextOut(X, Y, 'Текст');

end;

В VCL-библиотеке предопределено два обработчика события для щелчков мышью:

OnClick;

OnDblClick.

Пример.

procedure TEditl.Click (Sender: TObject)

Begin

//Определение компонента, инициировавшего событие

if ActiveControl is TEdit then TEdit(ActiveControl).SelectAll;

end;

procedure TForm1.Edit2DblClick(Sender: TObject);

Begin

ShowMessage ('двойной щелчок');

end;



Поделиться:




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

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-06-03 Нарушение авторских прав и Нарушение персональных данных


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