AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Tasten abfangen und ersetzen?? T.T

Ein Thema von A-M-X · begonnen am 19. Nov 2005 · letzter Beitrag vom 23. Nov 2005
Antwort Antwort
A-M-X

Registriert seit: 29. Sep 2005
Ort: Karlsruhe
152 Beiträge
 
#1

Tasten abfangen und ersetzen?? T.T

  Alt 19. Nov 2005, 20:38
Huhu!!

Ich chatte wo (wow , 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 =))
  Mit Zitat antworten Zitat
Puhbaehr
(Gast)

n/a Beiträge
 
#2

Re: Tasten abfangen und ersetzen?? T.T

  Alt 19. Nov 2005, 23:27
Hallo!

Das Programm ist dein Programm?

Wenn ja sollte doch ein Ersetzen der Tasten reichen? (OnKeyDown)

Wenn nicht helfen dir evtl. Hier im Forum suchenHooks zum Abfangen der Tasten.

Delphi-Quellcode:
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'));
Das auf die schnelle daher könnte es Fehler enthalten und es geht zudem sicher noch origineller zu Lösen.
Aber das soll auch nur ein Beispiel sein
Für Taste ersetzen könnte Msg.HotKey := NeueTaste(und weitere) funktionieren.

Bis dahin,
Gruß, Robert
  Mit Zitat antworten Zitat
A-M-X

Registriert seit: 29. Sep 2005
Ort: Karlsruhe
152 Beiträge
 
#3

Re: Tasten abfangen und ersetzen?? T.T

  Alt 20. Nov 2005, 12:03
also ich mein in nem chat im browser ^^

im browser geb ich "lol" ein und er ersetzt es durch "rofl" ^^
  Mit Zitat antworten Zitat
Puhbaehr
(Gast)

n/a Beiträge
 
#4

Re: Tasten abfangen und ersetzen?? T.T

  Alt 20. Nov 2005, 21:50
Dann ist das obige das richtige für dich
  Mit Zitat antworten Zitat
A-M-X

Registriert seit: 29. Sep 2005
Ort: Karlsruhe
152 Beiträge
 
#5

Re: Tasten abfangen und ersetzen?? T.T

  Alt 22. Nov 2005, 19:22
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;
  Mit Zitat antworten Zitat
Puhbaehr
(Gast)

n/a Beiträge
 
#6

Re: Tasten abfangen und ersetzen?? T.T

  Alt 23. Nov 2005, 04:15
Na du musst schon ne Schleife hinsetzen sonst wirds nix. Und such mal nach ord () bzw. chr ()!

Viel Spaß.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:55 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