delphi - Correct way to ensure mainform has maximized and fully redrawn before showing a modal form on application load -


what recommended way ensure mainform maximized , controls redrawn before showing modal form on application first load?

i need show modal dialog when application starts (not login screen) if set form wsmaximized whilst screen maximizes, controls not have chance redraw , left ugly mess.

i show modal screen @ present using following:

procedure tform1.formactivate(sender: tobject); var   frmorderlookup:tfrmorderlookup; begin   onactivate := nil;   frmorderlookup:=tfrmorderlookup.create(nil);   try     frmorderlookup.showmodal;       frmorderlookup.free;   end; end; 

what post custom message form. way won't processed until other messages form have been handled. time message gets processed, form should have finished redrawing.

type   tmyform = class(tform)     procedure formcreate(sender: tobject);   private     procedure handlelookupmessage(var message: tmessage); message wm_user + 1;   end;  procedure tmyform.handlelookupmessage(var message: tmessage); var   frmorderlookup: tfrmorderlookup; begin   frmorderlookup := tfrmorderlookup.create(application);   try     frmorderlookup.showmodal;       frmorderlookup.release;   end; end;  procedure tmyform.formcreate(sender: tobject); begin   // maximise form here if needed   postmessage(handle, wm_user + 1, 0, 0); end; 

if you're worried message getting application again somehow, can add private boolean variable indicate it's been handled once.


Comments

Popular posts from this blog

django - How can I change user group without delete record -

java - Need to add SOAP security token -

java - EclipseLink JPA Object is not a known entity type -