![]() |
Richedit: prüfen ob verticale scrollbar sichtbar ist
hoi,
meine scrollbar im richedit erscheint erst sobald der text über dem sichtbarem hinaus gehen würde, wie prüf ich im onchange nun ob die scrollbar da ist oder nicht? |
Re: Richedit: prüfen ob verticale scrollbar sichtbar ist
Hi,
also wenn dir die größe von dem Richedit bekannt ist, kannst du es einfach so lösen: Sagen wir ab Zeile 6 wird die scrollbar eingeblendet (das kannst du ja dann ausprobieren):
Code:
Mfg
procedure TForm1.RichEdit1Change(Sender: TObject);
begin if RichEdit1.Lines.Count>5 then showmessage('scrollbar ist da'); end; |
Re: Richedit: prüfen ob verticale scrollbar sichtbar ist
das fenster ist vergrösserbar, daher brauch ich eine function die das "bemerkt" wann die scrollbar erscheint, aber danke
|
Re: Richedit: prüfen ob verticale scrollbar sichtbar ist
Hi
probier es mal mit GetScrollInfo.. die Funktion liefert einen Bool zurück... wenn keine Werte ermittelt worden liefert sie False. Vielleicht klappts ja damit. Gruß |
Re: Richedit: prüfen ob verticale scrollbar sichtbar ist
hoi, ich hab es mal mit folgendem versucht:
Delphi-Quellcode:
es geht darum das die scrollbar am anfang noch nicht existiert, sondern erst wenn der text überläuft erscheint sie, wenn weiterer text hinzugefügt wird, wird aber nicht mit gescrollt, erst wenn ich die scrollbar einmal nach unten geschoben habe, wieso funktionietr das nicht von anfang an das die scrollbar gleich ganz unten ist?
procedure TForm1.RichEdit1Change(Sender: TObject);
Var si: TScrollInfo; begin si.cbSize := sizeof(si); si.fMask := SIF_ALL; If GetScrollInfo(RichEdit1.Handle, SB_VERT, si) Then begin If si.nPos + si.nPage >= si.nMax Then SendMessage(Richedit1.Handle, WM_VSCROLL, SB_BOTTOM, 0); end else SendMessage(Richedit1.Handle, WM_VSCROLL, SB_BOTTOM, 0); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz