Главная страница
Навигация по странице:

  • Таблица

  • Параметр Возможные значения Описание

  • Листинг

  • реферат Простые операторы. Характеристика форм.docx. Лр операторы и выражения Delphi


    Скачать 1.3 Mb.
    НазваниеЛр операторы и выражения Delphi
    Дата17.04.2023
    Размер1.3 Mb.
    Формат файлаdoc
    Имя файлареферат Простые операторы. Характеристика форм.docx.doc
    ТипПрограмма
    #1067638
    страница21 из 26
    1   ...   18   19   20   21   22   23   24   25   26

    Перемещение указателя мыши


    В момент попадания указателя мыши в клиентскую область элемента управления генерируется событие

    property OnMouseEnter: TNotifyEvent;

    Выход указателя за пределы области сопровождается событием

    property OnMouseLeave: TNotifyEvent;

    При малейшем перемещении указателя мыши над поверхностью объекта у элемента управления генерируется событие:

    property OnMouseMove: TMouseMoveEvent;

    type TMouseMoveEvent = procedure(Sender: TObject; Shift: TShiftState;

    X, Y: Integer) of object;

    Параметры события вам уже знакомы (см. табл. 5.1), аргумент Shift контролирует состояние служебных клавиш, координаты указателя в рамках клиентской области элемента управления доступны благодаря аргументам X и Y.

    Вращение колесика мыши


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

    property OnMouseWheel: TMouseWheelEvent;

    type TMouseWheelEvent = procedure(Sender: TObject; Shift: TShiftState;

    WheelDelta: Integer; MousePos: TPoint;

    var Handled: Boolean) of object;

    Параметры события описаны в табл. 5.2.

    Таблица5.2.ОписаниепараметровTMouseWheelEvent


    Параметр

    Возможные значения

    Описание

    Sender

    Ссылка

    Ссылка на источник сообщения

    Shift

    ssShift

    Удерживается в нажатом состоянии клавиша







    ssAlt

    Удерживается в нажатом состоянии клавиша

    ssCtrl

    Удерживается в нажатом состоянии клавиша

    ssLeft

    Нажата левая кнопка мыши

    ssRight

    Нажата правая кнопка мыши

    ssDouble

    Двойной щелчок любой кнопкой

    WheelDelta

    integer

    Отрицательное значение вращение вниз, положительное вверх

    MousePos

    TPoint

    Местоположение указателя мыши

    Handled

    Boolean

    False если обработкой события занимается родительский объект, иначе True


    Листинг 5.3 демонстрирует один из вариантов управления полосой прокрутки

    ScrollBar1:TScrollBar1 при посредничестве события OnMouseWheel() формы.


    Листинг 5.3. Управления полосой прокрутки с помощью колесика мыши




    procedure TForm1.FormMouseWheel(Sender: TObject; Shift: TShiftState;

    WheelDelta: Integer; MousePos: TPoint;

    var Handled: Boolean);

    begin

    if WheelDelta>0 then ScrollBar1.Position:=ScrollBar1.Position-1;

    else

    if WheelDelta<0 then ScrollBar1.Position:=ScrollBar1.Position+1; Handled:=true;

    end;
    В листинге 5.3 мы разобрались с направлением вращения колесика мыши за счет исследования знака значения возвращаемого параметром WheelDelta. Создатели Delphi решили еще более упростить работу программиста с колесиком мыши. Для этого были реализованы два события, каждое из которых соответствует своему направлению вращения:

    property OnMouseWheelUp: TMouseWheelUpDownEvent; //вращение вверх property OnMouseWheelDown: TMouseWheelUpDownEvent; //вращение вниз type TMouseWheelUpDownEvent = procedure(Sender: TObject;

    Shift: TShiftState; MousePos: TPoint;

    var Handled: Boolean) of object;

    Параметры событий аналогичны представленным в табл. 5.2.

    1   ...   18   19   20   21   22   23   24   25   26


    написать администратору сайта