DELPHI 6
近日遇到这样一个问题:
在一个窗体中加入两个Timer组件,一个为500ms,另一个为600ms, 在两个Timer的触发事件中这样写:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Timer1.enabled := false;
ShowMessage('Timer1');
end;
procedure TForm2.Timer2Timer(Sender: TObject);
begin
Timer2.enabled := false;
Messagebox(Self.Handle, 'Timer2', PChar(Self.Caption), MB_OK);
end;
Please run!
程序保证死掉!但是若将两个对话框弹出的方式都改为ShowMessage或MessageBox则不会出现此现象,百思不得其解!在用汇编窗口调试时,却无此现象!
请哪位高手赐教!
近日遇到这样一个问题:
在一个窗体中加入两个Timer组件,一个为500ms,另一个为600ms, 在两个Timer的触发事件中这样写:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Timer1.enabled := false;
ShowMessage('Timer1');
end;
procedure TForm2.Timer2Timer(Sender: TObject);
begin
Timer2.enabled := false;
Messagebox(Self.Handle, 'Timer2', PChar(Self.Caption), MB_OK);
end;
Please run!
程序保证死掉!但是若将两个对话框弹出的方式都改为ShowMessage或MessageBox则不会出现此现象,百思不得其解!在用汇编窗口调试时,却无此现象!
请哪位高手赐教!
procedure TForm1.Timer2Timer(Sender: TObject);
begin
Timer2.enabled := false;
Messagebox(Application.Handle, 'Timer2', PChar(Self.Caption), MB_OK);
end;
你的handle赋值有问题,你看下帮助,你那样用会有冲突
所以主窗体不响应你的消息,你把其他程序最大化然后在最小化就能看到
那个timer1的消息框,点确定。。