![]() |
Tasten abfangen und ersetzen?? T.T
Huhu!!
Ich chatte wo (wow :P , erstaunlich was? ^^) und ich möchte , dass wenn ich z.b. "^^" eingebe , dass mein Programm 2 mal backspace macht BZW den text durch "lol" ERSETZT , ned hintendran hängt. wie göhnt das? =) wär echt super froh wenn ein0r antwortet =)) |
Re: Tasten abfangen und ersetzen?? T.T
Hallo!
Das Programm ist dein Programm? Wenn ja sollte doch ein Ersetzen der Tasten reichen? (OnKeyDown) Wenn nicht helfen dir evtl. ![]()
Delphi-Quellcode:
Das auf die schnelle daher könnte es Fehler enthalten und es geht zudem sicher noch origineller zu Lösen.
type
... procedure WMHotKey (var Msg : TWMHotKey); message WM_HOTKEY; private KeysPressed : string; MeineZeichen : TStrings; ZeichenErsetzenDruch : TStrings; ... ... // Ins FormCreate für z.B. Taste L: RegisterHotKey (Form1.Handle, ord ('L'), MOD_CONTROL, ord ('L')); KeysPressed := ''; MeineZeichen := TStringList.Create; ZeichenErsetzenDurch := TStringList.Create; // Hier nun in MeineZeichen alle Zeichenketten rein die ersetzt werden sollen und in // ZeichenErsetzenDurch das rein durch was die Zeichenkette ersetzt werden soll, z.B.: MeineZeichen.Add ('L'); ZeichenErsetzenDurch.Add ('lol'); ... procedure TForm1.WMHotKey (var Msg : TWMHotKey); ... begin KeysPressed := KeysPressed + Msg.HotKey; // Schleife... und if (pos (KeysPressed, MeineZeichen.Strings[i]) = 1) then begin if (Length (KeysPressed) = MeineZeichen.Strings[i].Count) then begin // Taste ersetzen end; end; end; // Im FormClose: UnRegisterHotKey (Form1.Handle, ord ('L')); Aber das soll auch nur ein Beispiel sein ;) Für Taste ersetzen könnte Msg.HotKey := NeueTaste(und weitere) funktionieren. Bis dahin, Gruß, Robert |
Re: Tasten abfangen und ersetzen?? T.T
also ich mein in nem chat im browser ^^
im browser geb ich "lol" ein und er ersetzt es durch "rofl" ^^ |
Re: Tasten abfangen und ersetzen?? T.T
Dann ist das obige das richtige für dich ;)
|
Re: Tasten abfangen und ersetzen?? T.T
also
geht ned ^^
Delphi-Quellcode:
procedure TForm1.WMHotKey(var Msg: TWMHotKey);
begin if Msg.HotKey = iHotKeyStrgT then Timer1.Enabled := true; if Msg.HotKey = iHotKeyStrgToff then //<--- des alles was anderes Timer1.Enabled := false; KeysPressed := KeysPressed + msg.hotkey; // <-- Inkompatible Typen : String u. Integer // Schleife... und if (pos (KeysPressed, MeineZeichen.Strings[i]) = 1) then //<-- undefinierter bezeichner "i" begin if (Length (KeysPressed) = MeineZeichen.Strings[i].Count) then begin // Taste ersetzen end; end; end; |
Re: Tasten abfangen und ersetzen?? T.T
Na du musst schon ne Schleife hinsetzen sonst wirds nix. Und such mal nach ord () bzw. chr ()!
Viel Spaß. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:03 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