ПредишенСледващото

Как да разпитва за състоянието на бутоните на мишката в OnMouseMove събитие?

F1 + последния параграф

процедура TForm1.FormMouseMove (Sender: TObject; Shift: TShiftState; X,
# XA0; Y: цяло число);
започвам
ако (GetKeyState (VK_LBUTTON) И 128) = 128
след това с надписи: = бутона "е натиснат
друг надпис: = "не натиснете бутон";
приключи;

Това I.Pavel: Благодаря ви много!

След натискане на бутона за достъп до контролния курсора, а след това mausmuva никога не ще.

и ако се натисне бутона за контрол, това е достатъчно, за да се разбере какво shiftsteyta затегнато бутон.

И все пак, "128" писмена форма не е красива, защото те не се появяват Булева същност.


> Ако бутона натиснат, докато курсора върху контрола вход, а след това mausmuva
> По принцип няма.

Изглежда само на левия бутон, нали?

във всеки случай достатъчно shifisteyta

конст
В128 = 128;

ако GetAsyncKeyState (VK_LBUTTON) и $ 8000 <> 0
# XA0, след Надпис: = "бутон натиснат"
# XA0; друг надпис: = "натиснат бутона";


> Както и да е достатъчно shifisteyta

достатъчно е само ако е (например, е посочена като аргумент).


> Достатъчно е само ако е

Ако dorgaesh събитие манипулатор директно, това е, меко казано, също предполага, че трябва да мислим за архитектурата.

Shiftstate - тя също е решение вариант, но тъй като звучи в [1], се реши да предложи алтернатива.


> За възвишени дела и идеални форми е в духа на Vasisualy
> Lokhankin.

В действителност, той имаше само три neidealnoformovyh и nevysokomaterialnyh: пиле, светлина в тоалетната и Барбара.

защо 128 (0x80). не е първият да отиде на мишката?

> Защо 128 (0x80). не е първият да отиде на мишката?

LSB определя "включен" дали бутона (например, ако CapsLock изключен) и високо - дали бутона натиснат:

Ако малко от висок ред е 1, най-важното е надолу; в противен случай, той е до.
Ако малко от нисък ред е 1, ключът се превключва. Ключов, като например Caps Lock ключ, функцията е включена, ако е включен.
Ключът е изключен и untoggled ако малко от нисък ред е 0.
Ключов превключване "и светлинен индикатор (ако има такива) на клавиатурата, ще бъде, когато ключът се превключва и изключва, когато ключът е untoggled.

Памет: 0.76 MB
Време: 0.056 гр

Свързани статии

Подкрепете проекта - споделете линка, благодаря!