![]() |
1
144
无法创建不被其他进程的最顶层窗口覆盖的窗口。雷蒙德陈 explained 为什么? |
![]() |
2
31
我在搜索使我的WinForms应用程序“总是在最上面”,但设置“最上面”对我没有任何帮助。我知道这是可能的,因为Winamp可以做到这一点(以及其他应用程序的主机)。 我所做的就是打电话给“user32.dll”,我对此毫无疑问,而且效果很好。无论如何,这是一种选择。 首先,导入以下命名空间:
在类声明中添加一些变量:
为user32.dll函数添加原型:
然后在您的代码中(我以_Load()的形式添加了调用),添加调用:
希望有帮助。 Reference |
![]() |
3
21
如果说“发疯”,你的意思是每个窗口都在从另一个窗口窃取焦点,那么Topmost不会解决这个问题。 相反,尝试:
这将显示“子”窗体,而不会窃取焦点。即使父窗体被激活或集中,子窗体也将保持在其父窗体之上。只有在您从所有者窗体中创建了子窗体的实例时,此代码才容易工作。否则,您可能需要使用API设置所有者。 |
![]() |
4
15
集合 Form.TopMost |
![]() |
5
6
设置表单
您可能不想一直这样做:当外部进程开始时设置它,当它结束时放回去。 |
![]() |
6
5
我解决这个问题的方法是制作一个带有取消选项的系统托盘图标。 |
![]() |
7
5
我有一个短暂的5分钟的失误,我忘了详细说明表格如下:
但我真正想要的是这个!
|
![]() |
8
4
您试图禁止的另一个应用程序是什么?你是否研究过其他达到你期望效果的方法?在让你的用户受到你所描述的这种无赖行为之前,请这样做:你想做的事情听起来很像某些淘气的网站用浏览器窗口做的事情…… 至少要坚持 Least Surprise . 用户希望能够确定大多数应用程序本身的z顺序。你不知道什么对他们来说最重要,所以如果你改变了任何东西,你应该集中精力在每件事情的背后推动另一个应用程序,而不是提升你自己的应用程序。 这当然更棘手,因为Windows没有特别复杂的窗口管理器。有两种方法表明自己:
|
![]() |
9
4
为什么不将窗体设为对话框:
|
![]() |
10
4
以下代码使窗口始终保持在顶部,并使其无框架。
|
![]() |
11
3
以下是SetForegroundWindow等效值:
我见过人们做一些奇怪的事情,比如:
http://blog.jorgearimany.com/2010/10/win32-setforegroundwindow-equivalent-in.html |
![]() |
12
1
我知道这很古老,但我没有看到这种反应。 在窗口(xaml)中添加:
在窗口的代码隐藏中,禁用:
这会使你的窗户保持在上面。 |
![]() |
Emopusta · 从后端到前端的图像路径不工作 2 年前 |
![]() |
Asdrubal Hernandez · Linq查询特定数组索引出错 2 年前 |
![]() |
Niyazi Babayev · 如何在表达式中动态应用表达式? 2 年前 |
|
Dansih · .Net核心自定义身份验证方案 2 年前 |
![]() |
lolorekkk · 面板插入。NET WinForm 2 年前 |