![]() |
Re: TStringList => Anordnung der Einträge
'DEF' noch eine Position später einfügen?
|
Re: TStringList => Anordnung der Einträge
Steht doch da ;) (Ein Post hoch)
Klappen tuts aber irgentwie nicht, ich weis nicht ws falsch ist. .. Aber ich glaube TStringList ist auch nicht dafür geeignet. Denn wenn ich ein paar Leerzeichen eingebe, und dann erst ABC, passiert nix. Zum SynMemo: Ist alles gleich zum Memo. Also wenn es ums Eingeben geht .. alles identisch |
Re: TStringList => Anordnung der Einträge
Zitat:
|
Re: TStringList => Anordnung der Einträge
Warum nicht gleich die Key-Chars in einen String?
Macht vielleicht vieles einfacher? Aus einem String kann man genauso easy Zeichen löschen, hinzufügen, rauskopieren etc. |
Re: TStringList => Anordnung der Einträge
Sind ja nicht immer nur Buchstaben. Manchmal auch Zahlen und so..
Ich probiere grade mal etwas mit Copy, hab da eine Idee melde mich sofort wieder. Ne klappt nicht.. Ok.. abgesehen von allem anderen: Das mit der StringList klappt alleine deswegen nicht, weil, wie oben scon gesagt, wenn ich ein paar Leerzeichen zuerst eingebe, und dann erst ABC, reagiert der nicht mehr auf die IF-Abfrage. Da stimmt nämlich was nicht mit der for-schleife.. Ich dachte eigentlich, dass man sich die anzahl der zeichen in der StringList holen kann, und dann die letzten X in einen string steckt. aber, wie ich ab label sehen kann, macht AllTypedKeys[i]+Str; etwas anderes |
Re: TStringList => Anordnung der Einträge
hm, also ich würde die ganzen Eingabezeichen in einen String adden, den dann vor dem Weiterverarbeiten von evtl. Leerzeichen befreien und dann das ausführen, was notwendig ist.
|
Re: TStringList => Anordnung der Einträge
mh, jetzt mal eine andere frage(hätte ich vielleicht am anfang machen sollen)
ist das überhaupt der richtige ansatz ? also ich mein, wie könnte man soetwas einfacher lösen.. es geht ja nur drum, dass - wenn z.b. ABC eingegeben wurde, DEF hinten dran gehangen wird - |
Re: TStringList => Anordnung der Einträge
Delphi-Quellcode:
So müsste es in etwa gehen.
p:=Pos('ABC', InputStr);
if p > 0 then Insert('DEF',InputStr,p+3); |
Re: TStringList => Anordnung der Einträge
Wenn ins Memo eingegeben wird, könnte man den KeyUp-Event des Memos nutzen und die letzten drei Zeichen vorm Cursor prüfen, wenn es die gesuchte Zeichenkette ist, einfach die dazugehörigen Zeichen an der Cursorposition einfügen.
|
Re: TStringList => Anordnung der Einträge
ich bekomms einfach nicht hin.
Delphi-Quellcode:
wenn dann denn mal ABC da wo die ****'s sind zutrifft passiert einfach nix
procedure TForm1.SynMemo1KeyPress(Sender: TObject; var Key: WideChar);
begin text := SynMemo1.Text; Ln := SynMemo1.CaretY; CurPosition := SendMessage(SynMemo1.handle,EM_LineIndex,Ln,0); CurPosition := SynMemo1.SelStart-CurPosition; end; procedure TForm1.SynMemo1KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState); begin Caption := '('+IntToStr(CurPosition)+') "' +Copy(SynMemo1.Text, CurPosition-3, 3)+'"'; // nur zum gucken if Copy(SynMemo1.Text, CurPosition-3, 3) = 'ABC' then // **** Insert('CDE', text, CurPosition+3); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:08 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