Benutzer mit den meisten Antworten
Ziffernblock zur Laufzeit einschalten

Frage
-
Hallo zusammen,
in meinem Programm brauche ich Zugriff auf den Ziffernblock. Ich weiß aber, dass der bei manchen Anwendern gelegentlich ausgeschaltet ist. Mit:
If My.Computer.Keyboard.NumLock Then MsgBox("NUM LOCK on") Else MsgBox("NUM LOCK off") End If
prüfe ich erfolgreich ab, ob der Ziffernblock ein- oder ausgeschaltet ist. Nun möchte ich diesen einschalten, wenn er ausgeschaltet ist. Wie mache ich das?
Liebe Grüße Stefan | Cheers Stefan I'm using VB 2008 and VB 2010 Express Be a good forum member - mark posts that contain the answers to your questions or those that are helpful. c# in vb Translator: http://www.developerfusion.com/tools/convert/csharp-to-vb/
Antworten
-
Hallo Peter,
danke für Deine Antwort.
Ich habe jetzt noch eine Kurzlösung gefunden, die ggf. auch mal anderen Usern hilft.
Dim WshShell As Object = CreateObject("WScript.Shell") WshShell.SendKeys("{NUMLOCK}")
Liebe Grüße Stefan | Cheers Stefan I'm using VB 2008 and VB 2010 Express Be a good forum member - mark posts that contain the answers to your questions or those that are helpful. c# in vb Translator: http://www.developerfusion.com/tools/convert/csharp-to-vb/
- Als Antwort vorgeschlagen Florian Haupt Dienstag, 4. September 2018 06:56
- Als Antwort markiert Giftzwockel Montag, 10. September 2018 18:14
-
Hi Stefan,
wenn SendKeys nicht funktioniert, dann musst Du die Tastenbedienung simulieren. Für Windows 10 funktioniert der folgende Code:Module Module01 Private Declare Sub keybd_event Lib "user32" (bVK As Byte, bScan As Byte, dwFlags As Integer, dwExtraInfo As Integer) Private Const VK_NUMLOCK = &H90 Private Const KEYEVENTF_EXTENDEDKEY = &H1 Private Const KEYEVENTF_KEYUP = &H2 Sub Main() Console.WriteLine(My.Computer.Keyboard.NumLock) 'Simulate Key Press keybd_event(VK_NUMLOCK, &H45, KEYEVENTF_EXTENDEDKEY Or 0, 0) 'Simulate Key Release keybd_event(VK_NUMLOCK, &H45, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0) Console.WriteLine(My.Computer.Keyboard.NumLock) Console.WriteLine("weiter mit Taste") Console.ReadKey() End Sub End Module
--
Viele Grüsse
Peter Fleischer (ehem. MVP)
Meine Homepage mit Tipps und Tricks- Als Antwort markiert Giftzwockel Sonntag, 2. September 2018 07:37
Alle Antworten
-
Hi,
hast Du es mal probiert mit:My.Computer.Keyboard.SendKeys("{NumLock}", True)
--
Viele Grüsse
Peter Fleischer (ehem. MVP)
Meine Homepage mit Tipps und Tricks -
Hallo Peter,
jetzt habe ich es versucht. Leider ohne Erfolg.
Stefan
Liebe Grüße Stefan | Cheers Stefan I'm using VB 2008 and VB 2010 Express Be a good forum member - mark posts that contain the answers to your questions or those that are helpful. c# in vb Translator: http://www.developerfusion.com/tools/convert/csharp-to-vb/
-
Hi Stefan,
wenn SendKeys nicht funktioniert, dann musst Du die Tastenbedienung simulieren. Für Windows 10 funktioniert der folgende Code:Module Module01 Private Declare Sub keybd_event Lib "user32" (bVK As Byte, bScan As Byte, dwFlags As Integer, dwExtraInfo As Integer) Private Const VK_NUMLOCK = &H90 Private Const KEYEVENTF_EXTENDEDKEY = &H1 Private Const KEYEVENTF_KEYUP = &H2 Sub Main() Console.WriteLine(My.Computer.Keyboard.NumLock) 'Simulate Key Press keybd_event(VK_NUMLOCK, &H45, KEYEVENTF_EXTENDEDKEY Or 0, 0) 'Simulate Key Release keybd_event(VK_NUMLOCK, &H45, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0) Console.WriteLine(My.Computer.Keyboard.NumLock) Console.WriteLine("weiter mit Taste") Console.ReadKey() End Sub End Module
--
Viele Grüsse
Peter Fleischer (ehem. MVP)
Meine Homepage mit Tipps und Tricks- Als Antwort markiert Giftzwockel Sonntag, 2. September 2018 07:37
-
Hallo Peter,
danke für Deine Antwort.
Ich habe jetzt noch eine Kurzlösung gefunden, die ggf. auch mal anderen Usern hilft.
Dim WshShell As Object = CreateObject("WScript.Shell") WshShell.SendKeys("{NUMLOCK}")
Liebe Grüße Stefan | Cheers Stefan I'm using VB 2008 and VB 2010 Express Be a good forum member - mark posts that contain the answers to your questions or those that are helpful. c# in vb Translator: http://www.developerfusion.com/tools/convert/csharp-to-vb/
- Als Antwort vorgeschlagen Florian Haupt Dienstag, 4. September 2018 06:56
- Als Antwort markiert Giftzwockel Montag, 10. September 2018 18:14