如何自动关闭弹出的messagedlg?
解决方案 »
- 函数中一个参数是PByte类型,调用的时候,是否需要new和dispose这个PByte参数?
- 整理硬盘,无意间发现一张月亮的清晰照片,贴出来共赏
- delphi .dpk与.dpl有什么不同?
- ●●●求助●●● 关于提取数据库中的最后一个记录
- 请问这是什么意思? 在线等.谢谢.
- 在线,简单,送分!
- 如何把DBgrid得到的值取出来,用数组保存起来?
- 这么简单的动态链接库为何就是会调用失败??有源码
- 大家都用ADO吗?还有很多关于ADO和三层结构的问题。
- 如何在窗体ONSHOW事件中关闭本窗体???
- 调用COM组件程序时遇到问题,数据类型如何转换,请各位DX帮忙解决
- 三方透明PANEL控件的使用(在线求助!急呀!!!)
不断的findwindow
function CreateMessageDialog(const Msg: string; DlgType: TMsgDlgType; Buttons:
TMsgDlgButtons): TForm;
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Timer1: TTimer;
procedure Button1Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;
hh:word;
implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
with CreateMessageDialog('dsfdsf',mtWarning, [mbYes, mbNo]) do
try
Position := poScreenCenter;
hh:=handle;
timer1.Enabled:=true;
ShowModal;
hh:=0;
timer1.Enabled:=false;
finally
hh:=0;
timer1.Enabled:=false;
Free;
end;end;procedure TForm1.Timer1Timer(Sender: TObject);
begin
if hh>0 then
SendMessage(hh, WM_SYSCOMMAND, SC_CLOSE, 0);
enabled:=false;
end;end.