AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TRichEdit probleme beim scrollen

Ein Thema von DelTurbo · begonnen am 6. Feb 2010 · letzter Beitrag vom 6. Feb 2010
Antwort Antwort
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.212 Beiträge
 
Delphi 2007 Architect
 
#1

TRichEdit probleme beim scrollen

  Alt 6. Feb 2010, 11:54
Hi,

ich habe ein problem mit dem RichEdit. Ich habe vorgegeben das die History 200 betragen darf. Bin ich unter 200 klappt alles wunderbar. Sobald was neues kommt wird es unten angehängt und gegebenfalls sauber gescrollt.

Überschreite ich die 200 und lösche dann die oberste zeile weg, springt er irgendwo mitten rein. Das heisst ich sehe dann nichtmehr das ende des textes, sondern der steht irgendwo mitten drin. Srcolle ich den dann wieder nach unten, passiert bei der nächsten ausgabe das gleiche. Er scrollt einfach irgendwo mitten rein.

Das RichEdit benutze ich nur als ausgabe. Es ist auf ReadOnly. Ist die 200 erreicht mache ich folgendes.

Delphi-Quellcode:
        
while REditOut.Lines.Count > 200 do begin
   REditOut.Lines.Delete(0);
end;
REditOut.Perform(EM_SCROLLCARET,SB_LINEDOWN,0);
Was mache ich falsch?

Vielen dank im voraus
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#2

Re: TRichEdit probleme beim scrollen

  Alt 6. Feb 2010, 12:03
http://msdn.microsoft.com/en-us/library/bb787527%28VS.85%29.aspx
SB_LINEDOWN
The user clicks the bottom scroll arrow.
Increments the scroll box position; scrolls toward the bottom of the data by one unit.

Wenn du löschst, dann landet der Cursor an der Stelle, wo gelöscht wurde.

Setze den Cursor (SelStart) auf das Dateiende und laß zu diesem scrollen.
$2B or not $2B
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.212 Beiträge
 
Delphi 2007 Architect
 
#3

Re: TRichEdit probleme beim scrollen

  Alt 6. Feb 2010, 12:46
REditOut.SelStart:=REditOut.Lines.Count so? Nach dem Delete oder vorher?

Sorry das ich nachfrage, aber es dauert immer bis zu 4 stunden bis ich die 200 zeilen voll habe. Und wenn ich weniger nehme zum testen dann klappt es?!?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#4

Re: TRichEdit probleme beim scrollen

  Alt 6. Feb 2010, 12:59
SelStart wird nicht in Zeilen angegeben.

Delphi-Quellcode:
REditOut.SelStart := Length(REditOut.Text);

// oder in Kurz

REditOut.SelStart := -1;
Zitat:
Nach dem Delete oder vorher?
Wenn durch das Delete die Position verschoben wird, dann wirst du es wohl danach machen müssen.

PS: das Delete vor dem Add würde auch gehn, da durch das Add ebenfalls die Position verschoben wird ... darum ist es danach immer am Textende.



Eigentlich sollte bei Add automatisch gescrollt werden, darum würde ich es so machen und nicht selber nochmals scollen:
Delphi-Quellcode:
while REditOut.Lines.Count >= 200 do
  REditOut.Lines.Delete(0);
REditOut.Lines.Add(s);
$2B or not $2B
  Mit Zitat antworten Zitat
DelTurbo

Registriert seit: 12. Dez 2009
Ort: Eifel
1.212 Beiträge
 
Delphi 2007 Architect
 
#5

Re: TRichEdit probleme beim scrollen

  Alt 6. Feb 2010, 13:08
Ach, klar. Ich dreh das dann am besten einfach um. Also erst Del und dann Add.

Vielen dank!!
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: TRichEdit probleme beim scrollen

  Alt 6. Feb 2010, 13:59
Alternativ kannst du auch folgendes probieren:

SendMessage(ARichEdit.Handle,WM_VSCROLL,SB_BOTTOM,0); mfg
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
Antwort Antwort


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 22: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