Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Bei Buttonklick Tastendruck an Edit senden (https://www.delphipraxis.net/15117-bei-buttonklick-tastendruck-edit-senden.html)

SirThornberry 22. Jan 2004 09:07


Bei Buttonklick Tastendruck an Edit senden
 
Hab wieder mal nen problem,

Ich hab mir mehrere Buttons auf mein Formular gepackt und die zu einer Tastatur angeordnet. Jetzt will ich, das wenn ich auf einen Button klicke im Edit dies ausgeführt wird. Einfach das ganze mit Edit.text neu setzen geht NICHT weil es ja auch solche Tasten wie die hinter dem "ß" (deutsche Tastatur) gibt und die könnt ich somit nie in einem Edit darstellen. Ich will also wenn ich einen Button klicke den Keycode, der auch im onkeydown eregnis des Edits kommen würde wenn ich darin tippe, an das Edit senden. Wie geht das??

[Edit1]
OK, habs zum teil jetzt hinn bekommen.
ich habs vorher mit
SendMessage(Edit1.Handle, WM_KEYDOWN, vkkeyscan('a'), 0);
SendMessage(Edit1.Handle, WM_KEYUP, vkkeyscan('a'), 0);
probiert und das ging nicht.
Wenn ich anstelle von Sendmessage, Postmessage nehme funktioniert es ALLERDINGS werden dann zwei "a"'s im Edit angezeigt.
Es wird also bei keydown und bei keyup ins edit geschrieben. Warum??

Wie bekomm ich so zum beispiel ein "A" hinn?? Dadurch das ja irgenwie bei Keydown das keyup mit kommt bekomich ich es nicht hinn die shifttaste auf down zu stellen und dann das 'a' hinterherzugeben. Das 'a' wird somit immer als kleines 'a' dargestellt'

[/Edit1]

Dax 22. Jan 2004 11:36

Re: Bei Buttonklick Tastendruck an Edit senden
 
Hi!

Such mal bei Torry nach "SendKeys".
BtW: Bei mir funktionieren alle... :wink:

SirThornberry 22. Jan 2004 12:33

Re: Bei Buttonklick Tastendruck an Edit senden
 
Die Komponenten bei Torry haben alle die angewohnheit eine andere Anwendung in den Fordergrund zu holen und dann die Tasten allgemein zu senden. Ich will aber an ein TEdit aus meiner eigenen Anwendung senden wobei das TEdit nie den Focus haben soll

Luckie 22. Jan 2004 12:35

Re: Bei Buttonklick Tastendruck an Edit senden
 
Warum schreibst du nicht mit WM_SETTEXT rein?

SirThornberry 22. Jan 2004 12:42

Re: Bei Buttonklick Tastendruck an Edit senden
 
um das ganze international zu halten wird in meinem Programm jedem Button (der zur Tastaturgehört) ein Keycode zugeordnet. Somit wird bei jedem buttonklick ein Tastendruck simuliert (zumindest soll es mal so sein). Und wm_settext bekommt man ja nicht hinn wenn man immer nu den aktuellen keycode hat. Außerdem ist es nicht möglich zum beispiel "é" zu schreiben weil dies ja aus zwei nacheinanderfolgenden Tastendrücken entsteht.

Luckie 22. Jan 2004 12:54

Re: Bei Buttonklick Tastendruck an Edit senden
 
Da du es eh international halten willst, wirst du wohl auf UniCode zurückgreifen müssen. Und dann kannst du auch den UniCode Charackter dareinschreiben.

Soll das so was wie eine virtuelle Tastatur werden? Die ist doch schon bei jedem Windows dabei. Irgendwo unter Eingabehilfen, muss gegebenenfalls nur nach installiert werden.

SirThornberry 22. Jan 2004 13:34

Re: Bei Buttonklick Tastendruck an Edit senden
 
jep, soll ne virtuelle Tastatur werden. Die von windows kann ich allerdings nicht nehmen das die vom skin her nicht passt und was viel wichtiger ist, die ist nicht für touchscreen geeignet. Unicode wäre glaube die Lösung, das Problem ist nur das es am Ende des Tages fertig sein muss :cry:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:10 Uhr.

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