FAQ: Виды событий для элементов управления в Delphi
|
OnClick
Событие, возникающее при нажатии левой кнопки мыши на элементе управления (нажимается и отпускается левая клавиша мыши, когда курсор находится над элементом управления)
OnDblClick
Событие, возникающее при двойном нажатии левой кнопки мыши на элементе управления (когда ее курсор указывает на компоненту)
OnMouseDown
Событие, возникающее при нажатии клавиши мыши, когда курсор находится над элементом управления. Событие будет повторяться до тех пор, пока не будет отпущена удерживаемая клавиша. Обработчик события имеет тип TMouseEvent:
TMouseEvent = procedure(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer) of object;
где Sender - компонента, над которой находится курсор мыши; Button - нажатая клавиша мыши (mbLeft - левая, mbRight - правая, mbMiddle – средняя или колесико); Shift - состояние клавиш Alt, Ctrl и Shift клавиатуры и клавиш мыши (тип-множество, элементы которого: ssShift - нажата клавиша Shift, ssAlt - нажата клавиша Alt, ssCtrl - клавиша Ctrl, ssLetf- левая клавиша мыши, ssRight - правая клавиша мыши, ssMiddle - средняя клавиша мыши, ssDouble - двойное нажатие клавиши мыши); X, Y- локальные координаты курсора мыши внутри компоненты Sender
OnMouseMove
событие, возникающее при перемещении мыши, когда ее курсор находится над элементом управления и нажата клавиша мыши. Обработчик события имеет тип TMouseMoveEvent:
TMouseMoveEvent = procedure (Sender: TObject; Shift: TShiftState; X, Y: Integer) of object;
где Sender - компонента, над которой находится курсор мыши; Shift - состояние клавиш Alt, Ctrl и Shift клавиатуры и клавиш мыши (тип-множество, элементы которого: ssShift - нажата клавиша Shift, ssAlt - нажата клавиша Alt, ssCtrl - клавиша Ctrl, ssLetf- левая клавиша мыши, ssRight - правая клавиша мыши, ssMiddle - средняя клавиша мыши, ssDouble - двойное нажатие клавиши мыши); X, Y- локальные координаты курсора мыши внутри компоненты Sender
OnMouseUp
Событие, возникающее при отпускании клавиши мыши, когда курсор находится над элементом управления. Обработчик события имеет тип TMouseEvent (см. выше событие OnMouseDown)
OnKeyDown
Событие, возникающее при клавиши на клавиатуре. Обработчик события имеет тип TKeyEvent:
TKeyEvent = procedure(Sender: TObject; var Key: Word; Shift: TShiftState) of object;
где Sender - активный элемент управления; Key - код нажатой клавиши; Shift - со¬стояние клавиш Alt, Ctrl и Shift клавиатуры и клавиш мыши (тип-множество, эле¬менты которого: ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDouble)
OnKeyPress
Событие, возникающее, когда нажимается символьная кла¬виша. Обработчик события имеет тип TKeyPressEvent:
TKeyPressEvent = procedure(Sender: TObject; var Key: Char) of object;
где Sender - активный элемент управления; Key - ANSI-код нажатой клавиши
OnKeyUp
Событие, возникающее, когда на клавиатуре отпускается нажатая клавиша. Зработчик события имеет тип TKeyEvent (см. выше событие OnKeyDown)
OnDragDrop
Событие, возникающее, когда на элемент управления опускается другой, перетаскиваемый элемент управления. Обработчик события имеет тип TDragDropEvent:
TDragDropEvent = procedure(Sender, Source: TObject; X, Y: Integer) of object;
где Sender - объект, на который опускается перетаскиваемый элемент управления; Source - перетаскиваемый элемент управления; X, Y - глобальные координаты курсора мыши во время опускания элемента управления Source. Событие возникает только тогда, когда действительно можно опус¬тить элемент управления Source на объект Sender (компонентом готов принять перетаскиваемый компонент или данные)
OnDragOver
Событие, возникающее, когда над элементом управления находится другой, перетаскиваемый элемент управления. Обработчик события имеет тип TDragOverEvent:
TDragOverEvent = procedure(Sender: TObject; Source: TDragDockObject; X,Y: Integer; State: TDragState; var Accept: Boolean) of object;
где Sender - объект, над которым перетаскивается элемент управлении; Source - перетаскиваемый элемент управления; X, Y - глобальные коорди¬наты курсора мыши; State - состояние режима перетаскивания (dsDragEnter - перетаскиваемый объект попадает на элемент управления, через который допустимо его перемещать; dsDragLeave - перетаскиваемый объект покидает этот элемент управления; dsDragMove - перетаскиваемый объект перемещаетсяется по такому элементу управления); Accept - параметр, которому обработчик событий должен дать значение True, если объект Sender может принять перетаскиваемый; элемент управления, и Falser в противном случае
OnEndDrag
Событие, возникающее, когда завершается перетаскивание тру¬щего элемента управления. Обработчик события имеет тип TEndDragEven:
TEndDragEven = procedure(Sender, Target: TObject; X, Y: Integer) of object;
где Sender - перетаскиваемый элемент управления; Target - объект, над
рым находится перетаскиваемый элемент управления; X, Y - глобальные
динаты курсора мыши во время прекращения перетаскивания. Событие возникает при любом прекращении перетаскивания - и когда объект Target может
принять элемент управления Sender, и когда не может. В последнем
случае перетаскиваемый элемент управления остается на старом месте
OnStartDrag
Событие, возникающее, когда начинается перетаскивание иду¬щего элемента управления. Обработчик события имеет тип TStartDragEven:
TStartDragEven = procedure(Sender: TObject; var DragObject: TDragObject) of object;
Sender - перетаскиваемый элемент управления; DragObject - специальный объект, используемый для формирования изображения элемента управления во время перетаскивания
OnEnter
Событие, возникающее, когда элемент управления становится активным (получает фокус ввода)
OnExit
Событие, возникающее, когда элемент управления престает быть активным (теряет фокус ввода)
|
|