当前焦点在其他程序上,我的程序想跳出一个提醒窗口。既然是提醒,自然要在所有窗口之上(包括其他程序的窗口)。我搜索了以前的帖子。用showmodal不知为何不行。只能当焦点在本程序时才出现在其他窗口之上。
用SetWindowPos(self.handle, HWND_TOPMOST,
self.Left, self.Top, self.Width, self.Height,0);窗口会跳出,但闪一下就没了。如果您愿意用messagedlg之类的也可以。我是菜鸟,不大懂。谢谢各位!
用SetWindowPos(self.handle, HWND_TOPMOST,
self.Left, self.Top, self.Width, self.Height,0);窗口会跳出,但闪一下就没了。如果您愿意用messagedlg之类的也可以。我是菜鸟,不大懂。谢谢各位!
showform:TForm2;
begin
showform:=TForm2.Create(self);
showform.Show;
SetForegroundWindow(showform.Handle);
end;这样就可以了
Application.BringToFront我也试验了,一样。会在任务栏里闪。这个问题看起来很简单,为什么不行?我是菜鸟,所以form2是最初就创建好的,不是在事件发生时再创建的。
begin
sleep(2000);
form2.FormStyle:=fsStayOnTop;
form2.Show;
end;还是只是闪一下就消失了。需要手动把焦点给我的程序。
formstyle:=fsStayOnTop