aierda 2024-04-29 11:28 采纳率: 74.6%
浏览 21
已结题

c#中SetWindowPos置顶失败

问题描述:
我的winform中嵌套Edeg Webview2浏览器,里面有一个弹出窗口A(当然 了弹框不受Edeg Webview2管辖了),
在A里面有一个超连接,会出弹出另外一个窗口B.
A窗口我使用SetWindowPos(A的句柄, (IntPtr)HWND_TOP, 0, 0, ScreenX, ScreenY, SWP_SHOWWINDOW)将
其进行置顶。
但是,我点击A窗口里面的超连接,B窗口是有出现的,但是在A窗口、winform窗口的下面,意思从上往下依次是:
A窗口,winform, B窗口
点击超连接时,我想让B窗口置顶,这样才合理。
但是我使用SetWindowPos(B的句柄, (IntPtr)HWND_TOP, 0, 0, ScreenX, ScreenY, SWP_SHOWWINDOW)却不生效。

另外,我也查也不少可以置顶的方法,都没有效果

提出问题:
请教各位能人指点,急, 感谢!

  • 写回答

26条回答 默认 最新

  • Java毕设王 2024-04-29 23:06
    关注
    获得1.00元问题酬金

    引用讯飞星火
    你可以尝试使用SetForegroundWindow方法将B窗口置顶。以下是示例代码:

    [DllImport("user32.dll")]
    static extern bool SetForegroundWindow(IntPtr hWnd);
    
    // 在点击超链接时调用此方法
    private void OnLinkClicked()
    {
        // 打开窗口B的代码
        // ...
    
        // 将窗口B置顶
        SetForegroundWindow(b窗口的句柄);
    }
    

    请确保替换b窗口的句柄为实际的窗口句柄。

    评论

报告相同问题?

问题事件

  • 系统已结题 5月7日
  • 修改了问题 4月29日
  • 创建了问题 4月29日

悬赏问题

  • ¥15 socket通信实现多人聊天室疑惑
  • ¥15 DEV-C++编译缺失
  • ¥33 找熟练码农写段Pyhthon程序
  • ¥100 怎么让数据库字段自动更新
  • ¥15 antv g6 力导向图布局
  • ¥15 quartz框架,No record found for selection of Trigger with key
  • ¥15 锅炉建模+优化算法,遗传算法优化锅炉燃烧模型,ls-svm会搞,后面的智能算法不会
  • ¥20 MATLAB多目标优化问题求解
  • ¥15 windows2003服务器按你VPN教程设置后,本地win10如何连接?
  • ¥15 求一阶微分方程的幂级数