怎么建立一个“不激活”的窗口?

searoom 2006-03-15 02:07:52
比如,我在一个 Edit 中输入数据的时候,自动弹出一个非模式窗口,在弹出的时候我可以继续输入数据,当前的焦点还仍然在原来那个 Edit 中?

我使用 aForm.Visible := ture 的话,当前程序的会自动将这个窗口激活而复发继续我的输入了
...全文
114 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
linzhengqun 2006-03-15
  • 打赏
  • 举报
回复
你参考THintWindow的实现方式就明白了。
cuteant 2006-03-15
  • 打赏
  • 举报
回复
当然,紧跟着要加上Form2.Visible := True;
cuteant 2006-03-15
  • 打赏
  • 举报
回复
用ShowWindow(Form2.Handle,SW_SHOWNOACTIVATE); //假设新窗体是Form2
searoom 2006-03-15
  • 打赏
  • 举报
回复
谢谢,这样确实有效!

不过感觉这样属于“事后补救”型的

如果在 Show 那个窗口的同时就不将其 Active 就更好一些 :)
老之 2006-03-15
  • 打赏
  • 举报
回复
弹出窗口后加一句
SetActiveWindow(Form1.Handle);//假设Edit所在的窗体是Form1

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧