On Sun, 4 Nov 2018 11:29:23 -0500, "James"
<ja...@productionautomation.net> wrote:

>The Lazarus version is mostly working in Lazarus, but instead of everything 
>happening before the form is loaded, is there a way I could make the form 
>first, then just start processing everything, so that my messages I send to
> memo1 show up as it's processing?  I'm guessing I need to move my program 
>from On-create to somewhere else so it runs after the memo box is showing... 
>but I don't know where I would move it to.  
>Any suggestions?
>

In a Lazarus GUI program you can use a timer to handle this.
Just set it to say 1s delay and thenb enable it in Form.OnCreate:

TfrmMain = class(TForm)
 ...
 Timer1: TTimer;
 ...

procedure TfrmMain.FormCreate(Sender: TObject);
begin
  Timer1.Interval := 500; //Default is 1000 ms
  Timer1.Enabled := true;
end;

procedure TfrmMain.Timer1Timer(Sender: TObject);
begin
  //Put your code here
  Application.Terminate; //The application will disappear from view...
end;

If you want your form to be responsive you also need this inside loops
in your program:
Application.ProcessMessages;

Otherwise the form will feel like a dead brick while the Timer
function runs...


-- 
Bo Berglund
Developer in Sweden

_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to