贾成刚 2024-03-01 11:48 采纳率: 100%
浏览 5
已结题

windows下的窗体置顶

在Windows系统中,如何抓取一个窗体(该窗体有子窗体)的句柄,并将该窗体置顶?
经过一段时间的尝试,使用Find Window()方法可以找到特定名称的窗体句柄,之后使用setwindowpos()方法将其置顶的过程中发现,对于多窗体是失败的,也就是说如果一个窗体自带子窗体,那用名称找到窗体句柄并置顶,就会失败。
应该怎么办?

  • 写回答

4条回答 默认 最新

  • 贾成刚 2024-03-08 08:41
    关注

    经过测试发现,是权限问题,窗口不能通过::setwindowpos()方法置顶,只要窗口句柄是正确的,就应该能成功,否则首先是权限问题,权限也就是是否是管理员权限,被置顶的窗体需要管理员权限,那么操作这个窗体的程序也需要是管理员权限启动的。好在管理员权限可以传递,也就是说开发软件是管理员启动的,那通过开发软件启动的运行软件也是管理员启动的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月16日
  • 已采纳回答 3月8日
  • 创建了问题 3月1日