Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi TMemo scrollt bei hidden Form nicht (https://www.delphipraxis.net/109643-tmemo-scrollt-bei-hidden-form-nicht.html)

taaktaak 5. Mär 2008 09:44

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:

taaktaak 5. Mär 2008 09:53

Re: TMemo scrollt bei hidden Form nicht
 
So fertig, falsches Event: Bau den Code in Application.OnRestore ein, dann funktioniert es!

ddcool 5. Mär 2008 09:59

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;

RavenIV 5. Mär 2008 10:03

Re: TMemo scrollt bei hidden Form nicht
 
Zitat:

Zitat von taaktaak
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:

Also ich würde auf Grusskarte tippen. :corky: :cheer:

taaktaak 5. Mär 2008 10:29

Re: TMemo scrollt bei hidden Form nicht
 
Gut geraten!
Dann wissen wir ja jetzt auch, wieso es nicht funktioniert!
:love:

SirThornberry 5. Mär 2008 10:39

Re: TMemo scrollt bei hidden Form nicht
 
wurde das Form zu diesem zeitpunkt noch nie gezeigt oder war es vorher schonmal sichtbar?

ddcool 5. Mär 2008 10:40

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.

taaktaak 5. Mär 2008 11:02

Re: TMemo scrollt bei hidden Form nicht
 
Nachtrag zum Thema "Grußkarte", die Delphi-Hilfe sagt zu Perform...
Zitat:

Mit Perform können Sie die Botschaftswarteschlange von Windows umgehen und eine Botschaft direkt an die Fensterprozedur des Steuerelements senden.

himitsu 5. Mär 2008 11:16

Re: TMemo scrollt bei hidden Form nicht
 
Zitat:

Zitat von taaktaak
und eine Botschaft direkt an die Fensterprozedur des Steuerelements senden.

nur wenn das Fenster (schon) existiert

Code:
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;
die meisten "Fenster"/Steuerelemente werden von der VCL erst erstellt, wenn sie angezeigt werden (und manchmal auch nur solange sie angezeigt werden).

evtl. hilft da ein Aufruf von (Control).HandleNeeded?

taaktaak 5. Mär 2008 11:29

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.
Seite 2 von 3     12 3      

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