我编了一个程序,在双击后就开始运行,我在procedure TForm1.FormCreate(Sender: TObject);中加入的,但运行时不见窗体,等运行完后才出现窗体,请问何解? 因为FormCreate在等待运行完,运行完后才能显示窗体。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 当然是这样,因为FORM 是在CREATE完之后才显示的。 窗体事件的先后顺序为:OnCreate->OnShow->OnPaint->OnActive,OnCreate表示窗体正在创建时发生,所以我建议你把运行动作放在OnActive里 我把它放在Form1的OnShow事件中,但是运行时它会变成最小化,点击后却不能还原,等程序运行完成后,它才会显示出来,请问大虾们何解??????????? 我只有一个窗体,我在OnShow中用到存储过程,设为自动登录。但就是运行时会不见窗体,怎么办?? 放在 onActive 中应该可以的 在form中放一个ttimer剩下的不要我说了吧 你可以在OnShow事件中向窗体Post一个自定义消息,然后在该消息处理中调用存储过程,窗体肯定先显示出来。 agui(阿贵): 在onShow事件中向窗体post自定义消息?请问怎么做?我是菜鸟! 定义新消息:const WM_PLEASE_INIT = WM_USER + $100;在TForm1体内定义处理方法: procedure WMPleaseInit(var Msg: TMessage); message WM_PLEASE_INIT;// 实现procedure TForm1.FormShow(Sender: TObject);begin PostMessage( Handle, WM_PLEASE_INIT, 0, 0 );end;procedure TForm1.WMPleaseInit(var Msg: TMessage); message WM_PLEASE_INIT;begin 初始化操作,包括执行存储过程。end; xml文件写入DATASET的问题 DELPHI能把DBGRID的数据直接打印出来吗 谁有注册版的fastreport啊? 很有意思的问题请同学们帮帮忙 Delphi borland官方新闻组,强烈推荐 从哪可以找到QRDBMemo控件? 如何把动态创建的button显示在Form1上? 我将Delphi改造了下 怎么办,给想想办法 重赏之下,必有勇夫? 请问:能这样使用参数吗? 怎样调用外部程序?
在onShow事件中向窗体post自定义消息?请问怎么做?我是菜鸟!
const
WM_PLEASE_INIT = WM_USER + $100;在TForm1体内定义处理方法:
procedure WMPleaseInit(var Msg: TMessage); message WM_PLEASE_INIT;
// 实现
procedure TForm1.FormShow(Sender: TObject);
begin
PostMessage( Handle, WM_PLEASE_INIT, 0, 0 );
end;procedure TForm1.WMPleaseInit(var Msg: TMessage); message WM_PLEASE_INIT;
begin
初始化操作,包括执行存储过程。
end;