Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   suche Codeliste: Keydown liefert 190 bei einem Punkt (https://www.delphipraxis.net/154269-suche-codeliste-keydown-liefert-190-bei-einem-punkt.html)

erich.wanker 3. Sep 2010 15:09

suche Codeliste: Keydown liefert 190 bei einem Punkt
 
Hallo Leute,

Irgendwie seh ich den Wald vor lauter Bäume nicht :oops:

Wegen "keybd_event" such ich eine Liste, welcher Char welchen Wert hat (keine Ascii Liste)..
Ein Punkt = 190
Ein Beistrich = 188
..

Vielen Dank

Erich

Uwe Raabe 3. Sep 2010 15:17

AW: suche Codeliste: Keydown liefert 190 bei einem Punkt
 
Schau dir mal die VK_* Konstanten in Windows.pas an.

erich.wanker 3. Sep 2010 15:22

AW: suche Codeliste: Keydown liefert 190 bei einem Punkt
 
Hallo Uwe,

leider sind in der VK_Liste keine Sonderzeichen, wie Punkt, Beistrich oder @-Zeichen...

Ich will einen Tastendruck simulieren:

Delphi-Quellcode:
        if my_char ='.' then
            begin
                keybd_event(190, 0, 0, 0);
                keybd_event(190, 0, KEYEVENTF_KEYUP,0);
            end;

        if my_char =',' then
            begin
                keybd_event(188, 0, 0, 0);
                keybd_event(188, 0, KEYEVENTF_KEYUP,0);
            end;

        if my_char in ['a'..'z','0'..'9','A'..'Z'] then
            begin
                keybd_event(ord(my_char), 0, 0, 0);
                keybd_event(ord(my_char), 0, KEYEVENTF_KEYUP,0);
            end;
..finde aber keine Liste, wo alle Werte ersichtlich sind ..

Vielen Dank
Erich

blackfin 3. Sep 2010 15:28

AW: suche Codeliste: Keydown liefert 190 bei einem Punkt
 
Also bei mir ist der drin:

Code:
VK_OEM_PERIOD = 190;
Liegt das eventuell bei dir an D7, dass da manche fehlen?

Eventuell hilft dir ja auch folgende VK-to-Char Funktion:
How to translate a virtual-key to ASCII code

Uwe Raabe 3. Sep 2010 15:39

AW: suche Codeliste: Keydown liefert 190 bei einem Punkt
 
Zitat:

Zitat von erich.wanker (Beitrag 1047296)
leider sind in der VK_Liste keine Sonderzeichen, wie Punkt, Beistrich oder @-Zeichen...

VK_OEM_COMMA = 188;

VK_OEM_PERIOD = 190;

Das @-Zeichen wird durch VK_CONTROL + VK_MENU (= ALT) + Ord(Q) erzeugt.

himitsu 3. Sep 2010 15:42

AW: suche Codeliste: Keydown liefert 190 bei einem Punkt
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1047306)
Das @-Zeichen wird durch VK_CONTROL + VK_MENU (= ALT) + Ord(Q) erzeugt.

Auf einem deutschen/englischen Tastaturlayout ... muß aber nicht überall so sein.

SirThornberry 3. Sep 2010 15:43

AW: suche Codeliste: Keydown liefert 190 bei einem Punkt
 
Am besten du nutzt die entsprechende Windowsfunktion zum ermitteln welche Tasten notwendig sind um ein bestimmtes Zeichen zu erzeugen.
Hier der entsprechende Link zum Codelib-Beitrag: http://www.delphipraxis.net/481257-post1.html

Uwe Raabe 3. Sep 2010 15:54

AW: suche Codeliste: Keydown liefert 190 bei einem Punkt
 
Zitat:

Zitat von himitsu (Beitrag 1047307)
Zitat:

Zitat von Uwe Raabe (Beitrag 1047306)
Das @-Zeichen wird durch VK_CONTROL + VK_MENU (= ALT) + Ord(Q) erzeugt.

Auf einem deutschen/englischen Tastaturlayout ... muß aber nicht überall so sein.

Schon richtig, ich wollte es aber nicht gleich so kompliziert machen :)

himitsu 3. Sep 2010 16:02

AW: suche Codeliste: Keydown liefert 190 bei einem Punkt
 
Nja, wenn man es einfach haben möchte, dann könnte man auch gleich auf Bibliotheken zurückgreifen, welche es einem Abnehmen sowas selber erzeugen/zerlegen zu müssen.

SendKey ist da seit Jahren zu nennen und es gibt bestimmt auch noch Anderes dafür.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:27 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz