Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - An die letzte Zeile eines Memo-Feldes springen ?
mambo - Fr 21.11.03 12:54
Titel: An die letzte Zeile eines Memo-Feldes springen ?
ich habe einen eigenen Log-File-Viewer geschrieben mit dem man Textdateien, die sich gerade ändern laufend anschauen kann. Nun möchte ich aber bei jedem neu laden der Datei ans Dateiende springen oder aber an die Cursorposition an der man sich befindet. Wie kann ich das machen ?
die Prozedur ist bisher so:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| var fs: TFileStream; begin
if FileExists(OpenDialog.FileName) Then begin
fs:=TFileStream.Create (OpenDialog.Filename, fmOpenRead or fmShareDenyNone); Memo.Lines.LoadFromStream(fs);
end; |
danke
Moderiert von
Tino: Code- durch Delphi-Tags ersetzt.
Philer - Fr 21.11.03 13:30
Anders aber blöder gehts auch :D :
Delphi-Quelltext
1: 2: 3: 4: 5:
| var I:integer; begin I:=Memo1.Lines.Count; Memo1.Lines.Add(''); Memo1.Lines.Delete(I); |
-=Janos=- - Mo 01.12.03 11:04
An die letzte Zeile eines Memo-Feldes springen geht zwar mit
Delphi-Quelltext
1: 2:
| Memo1.Lines.Add(''); Memo1.Lines.Delete(Memo1.Lines.Count - 1); |
jedoch dauert es zulange.
Hat jemand eine bessere Idee. Wie sieht es aus mit EM_LINESCROLL? Oder würde es mit Memo.Selstart auch funktionieren?
Danke
Janos
Moderiert von
Tino: Code- durch Delphi-Tags ersetzt.
Tino - Do 04.12.03 12:47
Delphi-Quelltext
1: 2: 3: 4:
| Memo1.Perform(EM_LineScroll, 0 , -Memo1.Lines.Count-1); Memo1.Perform(EM_LineScroll, 0 , Memo1.Lines.Count-1); |
Ich hoffe das funktioniert!
Gruß
Tino
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!