c – ShowWindow()SW_HIDE窗口立即生效,没有效果
发布时间:2020-12-16 07:15:43 所属栏目:百科 来源:网络整理
导读:在我的C应用程序中,我有以下代码: ShowWindow(hDlg,SW_HIDE);MakeScreenshot();ShowWindow(hDlg,SW_SHOW); 这应该捕获屏幕截图,不包括当前应用程序窗口.但是有一个问题. SW_HIDE需要一些时间,因为我的Windows 8.1配置为使用动画效果.所以隐藏窗口需要大约40
在我的C应用程序中,我有以下代码:
ShowWindow(hDlg,SW_HIDE); MakeScreenshot(); ShowWindow(hDlg,SW_SHOW); 这应该捕获屏幕截图,不包括当前应用程序窗口.但是有一个问题. SW_HIDE需要一些时间,因为我的Windows 8.1配置为使用动画效果.所以隐藏窗口需要大约400毫秒,如果在此间隔期间捕获屏幕截图(它是),它还将包含应用程序本身的窗口,我不喜欢. 有没有办法立即隐藏当前窗口,所以它不会包含在创建截图函数中,后面会立即调用它?如果没有,除了应用程序本身之外,还有其他任何首选方法如何截取Windows桌面的屏幕截图吗?在MakeScreenshot之前添加延迟不是任何好的解决方案.谢谢. 解决方法
您可以使用MoveWindow(或SetWindowsPos)将不需要的窗口移动到虚拟桌面的可见区域之外,然后将其移回.
您可能需要枚举监视器以找到超出所有监视器范围的坐标,这将是一些工作.据推测,您的屏幕截图代码是计算快照的坐标,因此您可以重新使用该计算来找到一个安全的窗口停放位置. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |