【问题标题】:Open a specific windows handle in the background在后台打开特定的窗口句柄
【发布时间】:2011-03-17 00:55:21
【问题描述】:

基本上,我的程序所做的是通过比较来自 GetWindowText win32 api 调用的文本来搜索窗口句柄。然后它会创建该窗口并将其保存到图像中。一切正常;但是我需要的窗口必须处于最大化或正常状态。即使窗口在后台或屏幕外打开,程序也可以捕获它。我的问题是,有没有办法根据句柄打开窗口,但将窗口保留在后台?我已经能够使用 ShowWindow(int handle, int state) 将所需的窗口返回到正常状态,但这也将焦点设置到窗口。

刚刚想到... 保存当前活动句柄,调用 ShowWindow() 然后将焦点返回到保存的窗口是个好主意?

【问题讨论】:

    标签: c# winapi


    【解决方案1】:

    不太清楚,让我们关注 ShowWindow()。使用 SW_SHOWNOACTIVATE 选项来防止窗口被激活。

    【讨论】:

    • 谢谢汉斯,成功了,但是如果最小化它仍然会从我当前的活动窗口中获得焦点,但我需要的只是 SetFocus(GetActiveWindow());
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-08-15
    • 2015-07-23
    • 2018-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多