Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: KeyCode
mikmas
From Łódź Stadt




Typ: neutral
Postów: 772
Zarejestrowany: Apr 2003
KeyCode

Jak odebrać więcej niż 1 key code? Np kiedy nacisnę strzałkę w górę i w lewo to obraz przenosi się w lewo i górę?


_____________________________________________
4C;65;70;69;65;6A;20;62;79;9C;20;73;69;EA;20;
62;61;72;64;7A;69;65;6A;20;73;6B;6F;6E;63;65;
6E;74;72;6F;77;61;B3;20;6E;61;20;6F;64;70;6F;
77;69;65;64;7A;69;2C;20;61;20;6E;69;65;20;6E;
61;20;72;6F;7A;73;7A;79;66;72;6F;77;79;77;61;
6E;69;75;20;3A;50

27-01-2004 17:05
Pokaż profil mikmas  Wyślij email do mikmas   Odwiedź stronę mikmas       3632553
bisiek




Typ: neutral
Postów: 487
Zarejestrowany: Jul 2003

zrób tablicę 0 to 255 as boolen
w keydown włączaj klawisz
w keyup wyłączaj

i potem sprawdzaj klawisze w tablicy


_____________________________________________
www.mob.abc.pl - moja strona o VB

27-01-2004 20:43
Pokaż profil bisiek  Wyślij email do bisiek   Odwiedź stronę bisiek       3380672
anonim




Typ: Nie zarejestrowany
keycode

można zrobić tak:
form1.name = "forma"
ustaw forma.keypreview = true
i w zdarzeniu forma_keycode(...) wpisać np msgbox str(keycode)
w ten sposób odczytasz kody klawiszy

28-01-2004 15:43
  
mikmas
From Łódź Stadt




Typ: neutral
Postów: 772
Zarejestrowany: Apr 2003

Dzięki Anonim, ale coś mi nie działa - zachowuje się tak samo, jakby był bez KeyPreview'a . Wykorzystam sposób Biśka


_____________________________________________
4C;65;70;69;65;6A;20;62;79;9C;20;73;69;EA;20;
62;61;72;64;7A;69;65;6A;20;73;6B;6F;6E;63;65;
6E;74;72;6F;77;61;B3;20;6E;61;20;6F;64;70;6F;
77;69;65;64;7A;69;2C;20;61;20;6E;69;65;20;6E;
61;20;72;6F;7A;73;7A;79;66;72;6F;77;79;77;61;
6E;69;75;20;3A;50

28-01-2004 17:55
Pokaż profil mikmas  Wyślij email do mikmas   Odwiedź stronę mikmas       3632553
Chudy
[TLHW]Wiktor



Typ: moderator
Postów: 574
Zarejestrowany: Aug 2002

A ja polecam zastosować funkcje api GetAsyncKeyState np. w jakiejś pętli.


_____________________________________________
Projekt "Thunder Cannons" nadchodzi...

29-01-2004 09:12
Pokaż profil Chudy  Wyślij email do Chudy   Odwiedź stronę Chudy       1220895
Jelcyn
Admin forum




Typ: admin
Postów: 895
Zarejestrowany: Apr 2002

cytat z polskiego APIhelpa

Public Declare Function GetKeyboardState Lib "user32" Alias "GetKeyboardState" (
pbKeyState As Byte) As Long

Funkcja GetKeyboardState odczytuje status wszystkich klawiszy na klawiaturze i zapisuje wynik w 255 elementowej tablicy typu Byte. Dwa przypadki są odczytywane dla każdego z klawiszy: klawisz naciśnięty i klawisz włączony. W odróżnieniu od tego do czego przyzwyczaił nas DOS w Windows wszystkie klawisze mogą wystąpić jako przełączające (a nie tylko Caps Lock, Num Lock i Scroll Lock). Z wartości pierwszego bitu w bajcie (&H01) odczytujemy czy klawisz był naciśnięty - wartość 1 oznacza, że tak zaś 0 iż nie. Z wartości bitu &H80 danego bajta tablicy odczytujemy stos przełączania dla danego klawisza, 1 oznacza, że klawisz jest włączony, zaś 0 że nie. Poniższy przykład pokazuje jak odczytać status pojedynczego klawisza. W przypadku powodzenia funkcja zwraca 1 w innym przypadku 0.

pbKeyState: 255-elementowa tablica typu Byte przechowująca informacje o statusie klawiszy. Każdy klawisz jest identyfikowany przez swój kod wirtualny (virtual key code)


' Odczytujemy status klawisza Enter
' virtual key code dla Enter to 13 (&H0D)
Dim keystat(0 To 255) As Byte
x = GetKeyboardState(keystat(0))
' tablica jest przekazywane przez wskazanie elementu #0


If (keystat(13) And &H01) = &H01 Then  ' Gdy naciśnięto Enter
Label1.Caption = "Naciśnięto Enter."

End If

If (keystat(13) And &H80) = &H80 Then  'Włączono Enter
Label2.Caption = "Enter został włączony."

End If


_____________________________________________
Jelcyn
vb4all(małpka)canpol.pl
http://www.coderscity.pl/no-vb4all * http://www.jelcyn.com

29-01-2004 11:47
Pokaż profil Jelcyn  Wyślij email do Jelcyn   Odwiedź stronę Jelcyn       270849979    6237704
mikmas
From Łódź Stadt




Typ: neutral
Postów: 772
Zarejestrowany: Apr 2003

Wow - niezłe Jelcyn


_____________________________________________
4C;65;70;69;65;6A;20;62;79;9C;20;73;69;EA;20;
62;61;72;64;7A;69;65;6A;20;73;6B;6F;6E;63;65;
6E;74;72;6F;77;61;B3;20;6E;61;20;6F;64;70;6F;
77;69;65;64;7A;69;2C;20;61;20;6E;69;65;20;6E;
61;20;72;6F;7A;73;7A;79;66;72;6F;77;79;77;61;
6E;69;75;20;3A;50

29-01-2004 15:43
Pokaż profil mikmas  Wyślij email do mikmas   Odwiedź stronę mikmas       3632553
Jelcyn
Admin forum




Typ: admin
Postów: 895
Zarejestrowany: Apr 2002

Wejdź na http://www.vbtools.atelier.pl/warto.php?dzial=6 i pobierz ten plik pomocy, na pewno się przyda :-)


_____________________________________________
Jelcyn
vb4all(małpka)canpol.pl
http://www.coderscity.pl/no-vb4all * http://www.jelcyn.com

29-01-2004 17:50
Pokaż profil Jelcyn  Wyślij email do Jelcyn   Odwiedź stronę Jelcyn       270849979    6237704
Wszystkich odpowiedzi: 7 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1