总是像任务管理器一样在顶部



我正在做一个项目,但我遇到了一个问题,即让表单始终像德尔福的任务管理器一样保持在顶部 我使用了这段代码,但没有工作

SetWindowPos(Form1.Handle, HWND_TOPMOST, 0,0,0,0, SWP_NOACTIVATE+SWP_NOMOVE+SWP_NOSIZE);

现代任务管理器使用内部私有Windows功能来保持最佳行为。系统不会向用户窗口提供此功能。任务管理器使用的功能根本无法使用。

相关问题:任务管理器是Windows 10的特殊类型的"始终在顶部"窗口吗?

只需在设计时使用对象检查器将表单的FormStyle属性设置为fsStayOnTop即可。

原始帖子中的代码可能适用于主窗体,但不适用于辅助窗体。 fsStayOnTop 只是辅助表单解决方案的一部分。下面是一个简单的解决方案,用于使辅助表单保持在顶部,而主表单被其他应用程序遮挡 - 无需诉诸显示模式或表单创建技巧。

将其放在"表单 B"OnCreate 事件中:

FormStyle:= fsStayOnTop;

但仅凭这一点并不能解决问题...

应用程序事件拖到您的"表单 B"上

应用程序事件 1OnDeactivate事件中,添加以下内容:

设置前景窗口(手柄(;

当我的主表单正在处理站点外的数据时,我会关注一个小的状态窗口。效果很好!

相关内容

最新更新