Français
Source/ Codesnippets

intercepter Buchstaben Normale Tastatureingaben Umlaute

 

Source wurde am 15.07.2007 aus qui MMJ-Quellcodesammlung (Dietmar Horn) dans qui Babyklappe sur XProfan.Com abgelegt:
Tastatureingaben intercepter (Umlaute dans normale Buchstaben umsetzen)
Im folgenden Beispiel wird cela Umsetzen de Umlauten dans normalen Buchstaben vorgenommen.
Es wird une Nachrichtenfilterfunktion pour qui clavier-Nouvelles mittels SetWindowsHookEx installiert.
vous leitet qui eingehenden clavier-Nouvelles sur qui CallBack-Routine KbdHookProc um et wertet vous aus,
bevor vous abgefangen (avec Retour <> 0) ou bien weitergeleitet (avec Retour = 0) volonté.
Es volonté qui virtuellen Key-Codes pour qui deutschen Umlaute abgefangen et avec Keybd_Event dans un
entsprechendes Äquivalent mise en œuvre.
Es volonté deux MultiEdit-Controls sur dem la fenêtre ouvert, um trop montrer, dass cet Routine indépendant
de den Controls funktioniert.
Am Ende ist es notwendig, qui verkettete Routine mittels UnHookWindwsEx am Ende wieder trop entfernen.
-Begin-----------------------------------------------------------------
 $H Windows.ph
-DeclareVariables----------------------------------------------------
Déclarer hKbdHook&, Ende&
-HookProc------------------------------------------------------------

Proc KbdHookProc

    Paramètres nCode&, wParam&, lParam&
    Déclarer RetCode&

    Si wParam& = 222 Ä

        Si lParam& < 0

            ~keybd_event(65, 0, 0, 0)
            ~keybd_event(65, 0, ~KEYEVENTF_KEYUP, 0)
            ~keybd_event(69, 0, 0, 0)
            ~keybd_event(69, 0, ~KEYEVENTF_KEYUP, 0)

        EndIf

        RetCode& = 1

    ElseIf wParam& = 192 Ö

        Si lParam& < 0

            ~keybd_event(79, 0, 0, 0)
            ~keybd_event(79, 0, ~KEYEVENTF_KEYUP, 0)
            ~keybd_event(69, 0, 0, 0)
            ~keybd_event(69, 0, ~KEYEVENTF_KEYUP, 0)

        EndIf

        RetCode& = 1

    ElseIf wParam& = 186 Ü

        Si lParam& < 0

            ~keybd_event(85, 0, 0, 0)
            ~keybd_event(85, 0, ~KEYEVENTF_KEYUP, 0)
            ~keybd_event(69, 0, 0, 0)
            ~keybd_event(69, 0, ~KEYEVENTF_KEYUP, 0)

        EndIf

        RetCode& = 1

    ElseIf wParam& = 219 ß

        Si lParam& < 0

            ~keybd_event(83, 0, 0, 0)
            ~keybd_event(83, 0, ~KEYEVENTF_KEYUP, 0)
            ~keybd_event(83, 0, 0, 0)
            ~keybd_event(83, 0, ~KEYEVENTF_KEYUP, 0)

        EndIf

        RetCode& = 1

    D'autre

        ~CallNextHookEx(hKbdHook&, nCode&, wParam&, lParam&)
        RetCode& = 0

    EndIf

    Retour RetCode&

ENDPROC

---------------------------------------------------------------------
Fenêtre Style 27
Cls
hKbdHook& = ~SetWindowsHookEx(~WH_KEYBOARD,
@ProcAddr(KbdHookProc, 3), 0,
~GetWindowThreadProcessID(%hWnd, 0))
@Créer(MultiEdit, %hWnd, , 10, 10, 600, 210)
@Créer(MultiEdit, %hWnd, , 10, 235, 600, 210)
Claire Ende&

WhileNot Ende&

    WaitInput

    Si %Key = 2

        Ende& = 1

    EndIf

Endwhile

~UnHookWindowsHookEx(hKbdHook&)
-Fin-------------------------------------------------------------------
Fin
Hinweis: Es ist avec XProfan pas possible, systemweit clavier-Nouvelles abzufangen.
Windows erwartet une entsprechende Routine dans einer DLL-Dossier.
 
15.07.2007  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

4.168 Views

Untitledvor 0 min.
Thomas Freier10.06.2022
H.Brill12.02.2022
RudiB.26.02.2020
rquindt23.03.2019
plus...

Themeninformationen

cet Thema hat 1 participant:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie