![]() |
Re: TMemo scrollt bei hidden Form nicht
tja, das ist jetzt etwas seltsam, hab's mal ausprobiert - bei mir funktioniert das nach
OnActivate auch nicht. Ruft man es mit einem Button auf, geht es. Mal schauen, woran es liegt :evil: // @RavenIV - ähhmmmm, was macht denn das Perform in Post#8? Wird da 'ne Grusskarte verschickt, oder 'ne Message? :mrgreen: |
Re: TMemo scrollt bei hidden Form nicht
So fertig, falsches Event: Bau den Code in Application.OnRestore ein, dann funktioniert es!
|
Re: TMemo scrollt bei hidden Form nicht
Nein geht bei mir auch nicht. Arghhh! :-D
Habe jetzt:
Delphi-Quellcode:
procedure TfrmMain.RestoreForm(Sender: TObject);
begin Memo2.SelStart := Length(Memo2.Text); Memo2.Perform(EM_SCROLLCARET,0,0); end; procedure TfrmMain.FormCreate(Sender: TObject); begin Application.OnRestore := RestoreForm; end; |
Re: TMemo scrollt bei hidden Form nicht
Zitat:
|
Re: TMemo scrollt bei hidden Form nicht
Gut geraten!
Dann wissen wir ja jetzt auch, wieso es nicht funktioniert! :love: |
Re: TMemo scrollt bei hidden Form nicht
wurde das Form zu diesem zeitpunkt noch nie gezeigt oder war es vorher schonmal sichtbar?
|
Re: TMemo scrollt bei hidden Form nicht
Und wie mach ichs dann? per SendMessage oder PostMessage???
@SirThornberry: das ist egal, weder bei den einen noch bei dem anderen funktioniert es. |
Re: TMemo scrollt bei hidden Form nicht
Nachtrag zum Thema "Grußkarte", die Delphi-Hilfe sagt zu Perform...
Zitat:
|
Re: TMemo scrollt bei hidden Form nicht
Zitat:
Code:
die meisten "Fenster"/Steuerelemente werden von der VCL erst erstellt, wenn sie angezeigt werden (und manchmal auch nur solange sie angezeigt werden).
function TControl.Perform(Msg: Cardinal; WParam, LParam: Longint): Longint;
var Message: TMessage; begin Message.Msg := Msg; Message.WParam := WParam; Message.LParam := LParam; Message.Result := 0; [b]if Self <> nil then WindowProc(Message);[/b] Result := Message.Result; end; evtl. hilft da ein Aufruf von (Control).HandleNeeded? |
Re: TMemo scrollt bei hidden Form nicht
Moin, Moin himitsu!
Erster SAchverhalt war mir bewusst, der Zweite hat mich überrascht - da habe ich wieder etwas gelernt. Zum konkreten Fall: Hatte die Situation nachgestellt und da hat das Perform() funktioniert. Allerdings erfolgte das Minimize per BorderIcon und das Wiederherstellen ebenfalls händisch - vermutlich wird hierin der entscheidende Unterschied begründet sein, dass es bei ddcool nicht funktioniert. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:09 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-2025 by Thomas Breitkreuz