• خاموش و روشن کردن Caps Lock در ویژوال بیسیک
    #1
    Note 
    سلام عید همگی مبارک Confusedmilingsmiley:
    چطور میتونم کلید CapsLock رو خاموش و روشن کنم در ویژوال بیسیک؟

    پاسخ
    #2
    Note 
    Salam

    [VB]
    Option Explicit

    Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
    Private Declare Function MapVirtualKey Lib "user32" Alias "MapVirtualKeyA" (ByVal uCode As Long, ByVal uMapType As Long) As Long
    Private Declare Function SendInput Lib "user32" (ByVal nInputs As Long, pInputs As Any, ByVal cbSize As Long) As Long

    Private Type KeyboardInput ' typedef struct tagINPUT {
    dwType As Long ' DWORD type;
    wVK As Integer ' union {MOUSEINPUT mi;
    wScan As Integer ' KEYBDINPUT ki;
    dwFlags As Long ' HARDWAREINPUT hi;
    dwTime As Long ' };
    dwExtraInfo As Long ' }INPUT, *PINPUT;
    dwPadding As Currency '
    End Type

    'SendInput constants
    Private Const INPUT_KEYBOARD As Long = 1
    Private Const KEYEVENTF_KEYUP As Long = 2

    Private Const VK_CAPITAL = &H14

    Function CapsLock() As Boolean
    ' Determine whether CAPSLOCK key is toggled on.
    CapsLock = CBool(GetKeyState(VK_CAPITAL) And 1)
    End Function

    Public Sub SetCapsLockState(bEnabled As Boolean)
    'CapsLock is already in desired state. Nothing to do.
    If CapsLock = bEnabled Then Exit Sub

    PressCapsLock
    End Sub

    Private Sub PressCapsLock()
    GenerateKeyboardEvent VK_CAPITAL, 0
    GenerateKeyboardEvent VK_CAPITAL, KEYEVENTF_KEYUP
    End Sub

    Private Sub GenerateKeyboardEvent(VirtualKey As Long, Flags As Long)
    Dim kevent As KeyboardInput

    With kevent
    .dwType = INPUT_KEYBOARD
    .wScan = MapVirtualKey(VirtualKey, 0)
    .wVK = VirtualKey
    .dwTime = 0
    .dwFlags = Flags
    End With
    SendInput 1, kevent, Len(kevent)
    End Sub

    Private Sub Command1_Click()
    SetCapsLockState True
    End Sub

    Private Sub Command2_Click()
    SetCapsLockState False
    End Sub

    [/VB]

    پاسخ
    ایجاد موضوع جدید   پاسخ به موضوع  

    موضوعات مرتبط با این موضوع...
    موضوع نویسنده پاسخ بازدید آخرین ارسال
    Note دانلود نمونه سولات ویژوال بیسیک SOFTAFZAR 1 2,597 18-12-2015 ساعت 11:30
    آخرین ارسال: majidvajih
    Note ماشین حساب پیشرفته به زبان ویژوال بیسیک SOFTAFZAR 2 4,731 28-01-2015 ساعت 16:36
    آخرین ارسال: xMAN
    Note space در ویژوال بیسیک 6 شهره 1 811 04-10-2014 ساعت 10:42
    آخرین ارسال: Comodo
    Note ویژوال بیسیک amir7519 1 744 19-07-2014 ساعت 17:36
    آخرین ارسال: C0der
    Note باز و بستن برنامه ها با ویژوال بیسیک Somi 1 807 18-05-2014 ساعت 19:28
    آخرین ارسال: VBProgrammer
    Note ایجاد لوزی با ویژوال بیسیک 6 Nastaran 2 904 07-04-2014 ساعت 14:25
    آخرین ارسال: Nastaran
    Note کمک در Sendkey ویژوال بیسیک THE KNIGHT 11 2,915 29-03-2014 ساعت 09:44
    آخرین ارسال: Stack OverFlow
    Note دانلود مجموعه پروژه ویژوال بیسیک Daniel 0 777 14-03-2014 ساعت 22:37
    آخرین ارسال: Daniel
    Note تمرینات حل شده درس برنامه سازی(ویژوال بیسیک) Daniel 0 1,362 13-03-2014 ساعت 19:32
    آخرین ارسال: Daniel
    Note دانلود 105 پروژه ویژوال بیسیک SOFTAFZAR 6 5,121 23-02-2014 ساعت 18:21
    آخرین ارسال: Daniel

    کاربرانِ درحال بازدید از این موضوع:   1 مهمان