7 Şubat 2014 Cuma

VB Klavye Olayları

Tuş basımının aktif olmasa dahi form tarafından algılanması isteniyorsa formun KeyPreview özelliği True olmalıdır.

Sabit
Açıklama
vbCrLf 
CHR$(13)+(CHR$(10)
VbNullChar
Boşluk
VbLf
Yeni Satır Başına Geçiş CHR$(10)
VbBack
BackSpace CHR$(8)
VbCr
Satır Başı Chr$(13)

KeyDown

Tuşa basılması olayı. Aktif nesne tarafından algılanır. KeyUp olayından önce oluşur.

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

       ... ‘ Tuşa basılması ile yapılacak olan işlemler

    End Sub

KeyPress

Tuşa basılması ve bırakılması olayı. Aktif nesne tarafından algılanır.

Private Sub Form_KeyPress(KeyAscii As Integer)

       ‘ Tuşun basılıp bırakılması ile yapılacak olan işlemler

End Sub

KeyUp

Basılı olan tuşun bırakılması olayı. Aktif nesne tarafından algılanır. KeyDown olayından sonra oluşur.

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)

     ‘ Basılı olan tuşun bırakılması ile yapılacak olan işlemler

End Sub

Shift
Tuş Kombinasyonu
0
Basılı Tuş Yok (Ctrl,Alt,Shift)
1
Shift
2
Ctrl
3
Shift + Ctrl
4
Alt
5
Shift + Alt
6
Ctrl + Alt
7
Shift + Ctrl + Alt
               

Basılan Tuşun Kodunu Bulmak      

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

     MsgBox "Basılan Tuşun Kodu :" & KeyCode

End Sub

Basılan Tuşun Ascii Değerini Bulmak

Private Sub Form_KeyPress(KeyAscii As Integer)

         MsgBox "Basılan Tuşun Ascii Değeri :" & KeyAscii

End Sub

Sadece Büyük Harf Kullanmak 

Private Sub Form_KeyPress(KeyAscii As Integer)

         If KeyAscii = 13 Then
                  KeyAscii = 0
         End If
         KeyAscii = Asc(UCase(Chr(KeyAscii)))         ‘ UCase ile büyük harfe çevriliyor
         Print Chr(KeyAscii)

End Sub

Esc Tuşu ile Çıkış       

Çıkış_Butonu.Cancel = True

Private Sub Çıkış_butonu_Click()

         End

End Sub

NumLock ve CapsLock’u Açıp Kapatmak

(General)(Declaration)

Const VK_CAPITAL = &H14                 ‘ CapsLock

Const VK_NUMLOCK = &H90                 ‘ NumLock

Private Type KeyboardBytes

         kbByte(0 To 255) As Byte

End Type

Private Declare Function GetKeyboardState Lib "user32" _

   (kbArray As KeyboardBytes) As Long

Private Declare Function SetKeyboardState Lib "user32" _

   (kbArray As KeyboardBytes) As Long

Dim Tuş_Kodu As String

Dim kbArray As KeyboardBytes

 

Private Sub Command1_Click()

         ' Tuş_Kodu = VK_NumLock

         Tuş_Kodu = VK_CAPITAL

         GetKeyboardState kbArray

         kbArray.kbByte(Tuş_Kodu) = 0        ' Kapat

         SetKeyboardState kbArray

End Sub

 

Private Sub Command2_Click()

kbArray.kbByte(Tuş_Kodu) = 1                 ' Aç

SetKeyboardState kbArray

End Sub

Sisteme Tuş Basımı Yollamak

(General)(Declaration)

Option Explicit

Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte,  _

         ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

Const VK_CONTROL = &H11

Const KEYEVENTF_KEYUP = &H2

Const VK_ESCAPE = &H1B

 

Private Sub Form_Click()

         Call keybd_event(VK_CONTROL, 0, 0,0) ‘ CTRL

         Call keybd_event(VK_ESCAPE, 0, 0, 0) ‘ ESC

         Call keybd_event(VK_ESCAPE, 0, KEYEVENTF_KEYUP, 0)

         Call keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0)

End Sub

Fonksiyon Tuşlarına Görev Atamak

(General)(Declaration)

Option Explicit

Const KEY_F1 = &H70

Const KEY_F2 = &H71

Const KEY_ESCAPE = &H1B

 

Form1.KeyPreview = True ‘ Formun KeyPreview özelliği True

 

Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

     Select Case KeyCode

          Case KEY_F1                         ‘ F1 - Tarih

               Text1.Text = Date$

          Case KEY_F2                         ‘ F2 - Saat

               Text1.Text = Time$

          Case KEY_ESCAPE                 ‘ ESC - Çıkış

               Unload Me

         End Select

End Sub

SendKeys – Tuş Basımı Göndermek

 

Tuş

Kodu

Tuş

Kodu

Enter

{ENTER} veya ~

Yukarı Ok

{UP}

Esc

{ESC}

Aşağı Ok

{DOWN}

Tab

{TAB}

Sola Ok

{LEFT}

Caps Lock

{CAPSLOCK}

Sağa Ok

{RIGHT}

Back Space

{BACKSPACE}

Help

{HELP}

Del - Delete

{DELETE}   {DEL}

Scroll Lock

{SCROLLLOCK}

End

{END}

Print Screen

{PRTSC}

Page Down

{PGDN}

Break

{BREAK}

Page Up

{PGUP}

F1 -  F2

{F1} - {F12}

Home

{HOME}

Shift

+

Ins – Insert

{INSERT}   {INS}

Control

^

Num Lock

{NUMLOCK}

Alt

%

Private Sub Command1_Click()

     SendKeys "%{F4}", True         ‘ Alt + F4 Programı kapar

End Sub

Hiç yorum yok:

Yorum Gönder