Pytanie : dlaczego to

Cześć,

Shift: TShiftState;

TShiftState = set (ssShift, ssAlt, ssCtrl,
ssLeft, ssRight, ssMiddle, ssDouble);

Ok, ale swój zgodny z zgodny język jak C++
So i potrzebować ono zgodny w mój Param, like

TMyParam = pakować record
kbShift: DWORD;
end;

I am w ten sposób…

if ssShift w Zmianowy then
kbShift: = Integer (ssShift);
if ssAlt w Zmianowy then
kbShift: = kbShift lub Integer (ssAlt);
if ssCtrl w Zmianowy then
kbShift: = kbShift lub Integer (ssCtrl);
//for to typ i potrzebować ono, ale być może pętla móc ale?


So i móc the odwrotny sposób like

if ssCtrl w kbShift then


But, i myśleć tam  być lepszy sposób że… i próbować ale żadny success

kbShift: = -1;
for i: = Depresja (TShiftState) Wysoki (TShiftState) do
if (TShiftState (i) w Przesunięcie) then
kbShift: = kbShift lub TShiftState (i);


not praca! hehe

Some pomysł?

Regards,
Carlos

Odpowiedź : dlaczego to

NOTATKA:
Dźwięk jak ty potrzebować the wirtualny kluczowy kod konstanta reprezentować w twój TShiftstate zmienna. Using integer (ssShift), integer (ssAlt), Etc. pracować gdy ono wracać the rzecz wartość the ustalony rzecz. i.e. Przesunięcie wracać (0), alt wracać (1), Etc. I być dosyć pewny być być być ty chcieć.

jeżeli ty potrzebować the wirtualny kluczowy wartość, używać potrzebować jak potrzebować:
var kc: integer;

kc: = (0);
jeżeli ssShift w AShiftState wtedy kc: = kc LUB VK_SHIFT;
jeżeli ssCtrl w AShiftState wtedy kc: = kc LUB VK_CONTROL;
jeżeli ssALT w AShiftState wtedy kc: = kc LUB VK_MENU;

jeżeli ty potrzebować ono dla mysz wiadomość, używać potrzebować jak potrzebować:
jeżeli ssShift w AShiftState wtedy kc: = kc LUB MK_SHIFT;
jeżeli ssCtrl w AShiftState wtedy kc: = kc LUB MK_CONTROL;
//alt wspierać w mysz wiadomość, ty musieć musieć jak GetKeyState ono

Inne rozwiązania  
 
programming4us programming4us