Wenn dies Ihr erster Besuch hier ist,
lesen Sie bitte zuerst die Hilfe - Häufig gestellte Fragen
durch. Sie müssen sich vermutlich registrieren,
bevor Sie Beiträge verfassen können. Klicken Sie oben auf 'Registrieren', um den Registrierungsprozess zu
starten. Sie können auch jetzt schon Beiträge lesen. Suchen Sie sich einfach das Forum aus, das Sie am meisten
interessiert.
Die Zeilen der Memo-Komponente sind vom TStrings. Diese haben die Eigenschaft COUNT.
Dann könnte man also alle Zeilen in einer Schleife durchgehen die Zeichen zählen und in Abhängigkeit der Länge der letzten Zeile mit SELSTART positionieren??
Puh, das klingt ja nach ner Aufgabe für jemanden der Vater und Mutter erschlagen hat. Da muß es doch irgend was Schlaueres geben.
Nach einigem Suchen habe ich zwar schon was Nettes gefunden:<BR>
SendMessage(Memo1->Handle,EM_LINESCROLL,0,65565);
positive Zahlen scrollen den Text nach hinten und negative nach vorne. Einen Schönheitsfehler hat die Sache noch: Der Cursor bleibt da wo er ist. Schade - hat jemand noch ne bessere Idee. Die Windows API hat doch sicher noch was anderes auf Lager, oder ?
Habe das Gestern mal so getestet wie Du es brauchst.<br>
Hat wirklich nicht funktioniert.<br>
Ich habe bei mir nach ..->Add() immer ein ScrollBy aufgerufen,<br>
und dadurch ist es mir nicht aufgefallen.
SendMessage(Memo->Handle,EM_LINESCROLL,0,-Memo->Lines->Count )<br>
funktioniert tadellos.
da muß Du die API halt nochmal bemühen, in dem Du SelSart setzt.<br>
Erst mit LINESCROLL auf Zeile 1 und dann<br>
Memo->SelStart = SendMessage( Memo->Handle,EM_LINEINDEX,1,0 );
den Cursor setzen. Möchtest Du diese Zeile gleich markieren, dann<br>
noch<br>
Memo->SelLength = SendMessage( Memo->Handle,EM_LINELENGTH,Memo->SelStart,0 );<br>
ausführen.
Ist schon richtig, mit SelStart setzt Du die Curpos aber...<br>
die Anzeige wird damit nicht angepaßt, falls diese Position<br>
außerhalb des Sichtbereiches ist.<br>
Also doch ein bischen API benutzen.<br>
Ich habe den Zusammenhang auch nicht gleich gerafft, da man <br>
ja davon ausgeht das die Borländer mit denken.(is nich)<br>
Comment