微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

delphi – 如何让我的表单始终处于最佳状态?

我有这些小光标形状,我需要一直在所有的一切,一直……
FormStyle已经是fsstayOnTop
我用这个代码

SetwindowPos(tempCursor.Handle,HWND_TOPMOST,SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE );

而这(虽然我不知道它的作用):

procedure TCursorFrm.CreateParams(var Params: TCreateParams);
const
   WS_EX_NOACTIVATE = $8000000;
begin
   inherited;
   Params.ExStyle := Params.ExStyle + WS_EX_NOACTIVATE;
end;

但我仍然无法让我的表格在TMenuItems之上.
如何让我的表格始终处于最佳状态?

解决方法

这必须是我将要发布的最终或最糟糕的hackery.

>将FormStyle设置为fsstayOnTop(实际上可能不需要此步骤)
>在表单上删除TTimer并将其间隔设置为100
>在OnTimer事件中,放置以下代码

如果可见的话
  SetwindowPos(Self.Handle,SWP_NOSIZE或SWP_NOMOVE或SWP_NOACTIVATE);

我在我的一个项目中使用它,它似乎工作正常.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐