Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - im ritchedit automatisch scrollen
Snoop007 - Mi 30.10.02 20:12
Titel: im ritchedit automatisch scrollen
hi,
ich benutze die Komponente FindDialog zum suchen in einem Ritchedit - feld
wie kann ich zu einem gefundenen wort runter bzw. seitwärts scrollen ?
O'rallY - Mi 30.10.02 22:40
EDH hat folgendes geschrieben: |
Auch alle nicht in der Delphi-VCL gekapselten Funktionen kann man durch
ein PostMessage() der Nachricht WM_VSCROLL an das Memo erreichen.
Hier einige Beispiele:
an den Anfang des Textes:
PostMessage(Memo1.Handle,WM_VSCROLL,SB_TOP,0);
ans Ende des Textes:
PostMessage(Memo1.Handle,WM_VSCROLL,SB_BOTTOM,0);
eine Zeile hoch:
PostMessage(Memo1.Handle,WM_VSCROLL,SB_LINEUP,0);
eine Zeile runter:
PostMessage(Memo1.Handle,WM_VSCROLL,SB_LINEDOWN,0);
eine Seite hoch:
PostMessage(Memo1.Handle,WM_VSCROLL,SB_PAGEUP,0);
eine Seite runter:
PostMessage(Memo1.Handle,WM_VSCROLL,SB_PAGEDOWN,0);
Bewegungen innerhalb einer Zeile sind entsprechend mit der Nachricht WM_HSCROLL möglich...
|
Dürfte dir eigentlich weiterhelfen. Falls noch unklarheiten bestehen, einfach nochmal posten!
Snoop007 - Mi 30.10.02 23:57
das mit dem scrollen wusste ich schon, aber woher weiss ich, in welcher zeile ( Tstrings ) das wort steht, ich habe wenn ja nur die text position ( string )
O'rallY - Do 31.10.02 15:43
Ich weiß nicht ob 's da schon eine Funktion gibt, aber eine möglichkeit wäre, solange Length(RichEdit1.Lines[i]) zu einer Variable dazu zu zählen, bis sie größer ist als die Position des Wortes. Verstehst du was ich meine? So ungefähr könnte es funktionieren:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| function TForm1.FindLine(position: integer): integer; var i, letters: integer; begin Result := -1; letters := 0; if position = -1 then exit; for i := 0 to RichEdit1.Lines.Count - 1 do begin if (position >= letters) and (position <= (letters + Length(RichEdit1.Lines[i]))) then break; Inc(letters, Length(RichEdit1.Lines[i])); end;
Result := i;
end; |
Quelltext hat bei mir funktioniert! Hoffe nur, dass ich das nicht umsonst gemacht habe, fals so ne Funktion schon existiert *g*.
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!