GetFocus
Tato funkce vrací "handle"(hWnd) právě aktivního(focus) prvku.¨
Deklarace: Declare Function GetFocus Lib "user32" () As Long
GetKeyState
Funkce vrací momentální stav kterékoliv klávesy. 0 nebo 1 podle toho zda daná klávesa byla nebo nebyla stisknuta. Snadno lze takto detekovat např. "Caps Lock".
Parametry funkce: nVirtKey konstanta klávesy
Deklarace: Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
Zde je kompletní výpis všech kláves:
Konstanta Hodnota Popis
vbKeyLButton 0x1 Levé tlačítko myši vbKeyRButton 0x2 Pravé tlačítko myši vbKeyCancel 0x3 Klávesa CANCEL vbKeyMButton 0x4 Prostřední tlačítko myši vbKeyBack 0x8 Klávesa BACKSPACE vbKeyTab 0x9 Klávesa TAB vbKeyClear 0xC Klávesa CLEAR vbKeyReturn 0xD Klávesa ENTER vbKeyShift 0x10 Klávesa SHIFT vbKeyControl 0x11 Klávesa CTRL vbKeyMenu 0x12 Klávesa MENU vbKeyPause 0x13 Klávesa PAUSE vbKeyCapital 0x14 Klávesa CAPS LOCK vbKeyEscape 0x1B Klávesa ESC vbKeySpace 0x20 Klávesa MEZERNÍK vbKeyPageUp 0x21 Klávesa PAGE UP vbKeyPageDown 0x22 Klávesa PAGE DOWN vbKeyEnd 0x23 Klávesa END vbKeyHome 0x24 Klávesa HOME vbKeyLeft 0x25 Klávesa ŠIPKA VLEVO vbKeyUp 0x26 Klávesa ŠIPKA NAHORU vbKeyRight 0x27 Klávesa ŠIPKA VPRAVO vbKeyDown 0x28 Klávesa ŠIPKA DOLŮ vbKeySelect 0x29 Klávesa SELECT vbKeyPrint 0x2A Klávesa PRINT SCREEN vbKeyExecute 0x2B Klávesa EXECUTE vbKeySnapshot 0x2C Klávesa SNAPSHOT vbKeyInsert 0x2D Klávesa INSERT vbKeyDelete 0x2E Klávesa DELETE vbKeyHelp 0x2F Klávesa HELP vbKeyNumlock 0x90 Klávesa NUM LOCK
Konstanty kláves A až Z odpovídají ekvivalentům ASCII:
Konstanta Hodnota Popis
vbKeyA 65 Klávesa A vbKeyB 66 Klávesa B vbKeyC 67 Klávesa C vbKeyD 68 Klávesa D vbKeyE 69 Klávesa E vbKeyF 70 Klávesa F vbKeyG 71 Klávesa G vbKeyH 72 Klávesa H vbKeyI 73 Klávesa I vbKeyJ 74 Klávesa J vbKeyK 75 Klávesa K vbKeyL 76 Klávesa L vbKeyM 77 Klávesa M vbKeyN 78 Klávesa N vbKeyO 79 Klávesa O vbKeyP 80 Klávesa P vbKeyQ 81 Klávesa Q vbKeyR 82 Klávesa R vbKeyS 83 Klávesa S vbKeyT 84 Klávesa T vbKeyU 85 Klávesa U vbKeyV 86 Klávesa V vbKeyW 87 Klávesa W vbKeyX 88 Klávesa X vbKeyY 89 Klávesa Y vbKeyZ 90 Klávesa Z
Konstanty kláves 0 až 9 odpovídají ekvivalentům ASCII:
Konstanta Hodnota Popis
vbKey0 48 Klávesa 0 vbKey1 49 Klávesa 1 vbKey2 50 Klávesa 2 vbKey3 51 Klávesa 3 vbKey4 52 Klávesa 4 vbKey5 53 Klávesa 5 vbKey6 54 Klávesa 6 vbKey7 55 Klávesa 7 vbKey8 56 Klávesa 8 vbKey9 57 Klávesa 9
Následující konstanty odpovídají klávesám na numerické klávesnici:
Konstanta Hodnota Popis
vbKeyNumpad0 0x60 Klávesa 0 vbKeyNumpad1 0x61 Klávesa 1 vbKeyNumpad2 0x62 Klávesa 2 vbKeyNumpad3 0x63 Klávesa 3 vbKeyNumpad4 0x64 Klávesa 4 vbKeyNumpad5 0x65 Klávesa 5 vbKeyNumpad6 0x66 Klávesa 6 vbKeyNumpad7 0x67 Klávesa 7 vbKeyNumpad8 0x68 Klávesa 8 vbKeyNumpad9 0x69 Klávesa 9 vbKeyMultiply 0x6A Klávesa NÁSOBENÍ (*) vbKeyAdd 0x6B Klávesa PLUS (+) vbKeySeparator 0x6C Klávesa ENTER vbKeySubtract 0x6D Klávesa MÍNUS (–) vbKeyDecimal 0x6E Klávesa DESETINNÁ ČÁRKA (,) vbKeyDivide 0x6F Klávesa LOMENO (/)
Následující konstanty funkčním klávesám:
Konstanta Hodnota Popis
vbKeyF1 0x70 Klávesa F1 vbKeyF2 0x71 Klávesa F2 vbKeyF3 0x72 Klávesa F3 vbKeyF4 0x73 Klávesa F4 vbKeyF5 0x74 Klávesa F5 vbKeyF6 0x75 Klávesa F6 vbKeyF7 0x76 Klávesa F7 vbKeyF8 0x77 Klávesa F8 vbKeyF9 0x78 Klávesa F9 vbKeyF10 0x79 Klávesa F10 vbKeyF11 0x7A Klávesa F11 vbKeyF12 0x7B Klávesa F12 vbKeyF13 0x7C Klávesa F13 vbKeyF14 0x7D Klávesa F14 vbKeyF15 0x7E Klávesa F15 vbKeyF16 0x7F Klávesa F16
SetPixel, GetPixel
Funkce "SetPixel" vám umožní nastavit libovolnou barvu jednoho pixelu na objektu, pokud znáte jeho "handle". Pomocí této funkce lze vytvořit velice efektní "Progress bar", proto malá ukázka.
Parametry funkce: hdc manipulátor kontextu zařízení x pozice pixelu ve vodorovné ose y pozice pixelu ve svislé ose crColor hodnota barevného odstínu vyjádřená číslicí
Deklarace: Declare Function SetPixel Lib "gdi32" _ (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long) As Long
Použití: For j = 1 To 200 For m = 0 To 20 SetPixel Form1.hdc, j + 1, m + 1, j + 1 Next Next
A samozřejmně funkce "GetPixel" vám zase vrátí hodnotu barvy libovolného pixelu na objektu, pokud znáte jeho "handle".
Deklarace: Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long
Použití: to snad ani není třeba :)
|