Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi String in Memo einfügen /// Cursor in memo festlegen (https://www.delphipraxis.net/20884-string-memo-einfuegen-cursor-memo-festlegen.html)

Moin 24. Apr 2004 18:12


String in Memo einfügen /// Cursor in memo festlegen
 
Tach auch,
ich füge in ne MEMO n kurzen string ein:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var s: string;
begin
  s := memo1.Text;
  insert('<insert>',s,memo1.SelStart);
  memo1.Text := s;
end;
nach dem einfügen ist der Cursor aber ganz am Anfang der Memo :arrow: das nervt extrem!!!!
wie kann ich den Cursor hinter den neu eingefügten Text stellen :?: :?: :?:
Oder gibt es eine bessere methode, dem text einzufügen? :?: ?

THX im Vorraus
Euer MOIN :!: :!: :!:

Sharky 24. Apr 2004 18:18

Re: String in Memo einfügen /// Cursor in memo festlegen
 
Hai Moin,

einfach mittels SelStart den Carret setzen.

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
 s1,
 s2 : string;
 spos : Integer;
begin
  spos := memo1.SelStart;
  s2 := '<insert>';
  s1 := memo1.Text;
  insert(s2,s1,memo1.SelStart+1);
  memo1.Text := s1;
  memo1.SetFocus;
  memo1.SelStart := spos + Length (s2);
end;

Moin 28. Apr 2004 19:09

Re: String in Memo einfügen /// Cursor in memo festlegen
 
Und ich habe wieder ein Problem...

Meine Prozedur sieh jetzt so aus:

Delphi-Quellcode:
PROCEDURE TFenster.Einf(Text:String);
var s : string;
    spos : Word;

BEGIN
    spos := Memo.SelStart;

    If Memo.SelLength > 0
      Then begin
           Memo.SelText:= '' ;
           s := Memo.Text;
           end
      Else begin
           s := Memo.Text;
           
           end;
    Insert(Text, s, spos+1);
    Memo.Text := s;
    Memo.SetFocus;
    Memo.SelStart:= spos +Length(Text);
END;
Der Text kann also auch überschrieben werden, (Jetzt kommt das große Aber:) ABER
ich habe ein Memo mit :!: Scrollbars :!:, d. h. der Cursor steht zwar hinter dem eingefügten String, der "Focus" ist aber auf den Anfang der memo gesetzt. :arrow: Das nervt extrem wenn man am Ende des Dokumentes arbeiten will, da mann nur am scrollen is!!!!! :!: !!!!

Kann ich das Problem irgendwie umgehen??

THX im Vorraus,
MOIN


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:13 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