首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何查找窗口的SW_SHOW/SW_HIDE状态

如何查找窗口的SW_SHOW/SW_HIDE状态
EN

Stack Overflow用户
提问于 2009-09-16 11:12:24
回答 6查看 25K关注 0票数 15

我正在尝试确定已使用CWnd::ShowWindow()隐藏或启用的窗口控件的可见性。(或者::ShowWindow(hWnd,nCmdShow))

我不能简单地使用:: IsWindowVisible (hWnd),因为控件位于选项卡表上,选项卡表本身可能会被切换,从而导致IsWindowVisible返回FALSE。

有没有办法获得SW_SHOW/HIDE (或其他)窗口状态,或者我是否需要使用ShowWindow()的返回值并相应地重置?

编辑:由于控件被启用(或禁用)以显示,但当前可能不可见,因为切换到选项卡,我认为它的SW_SHOW状态将保持不变,即使窗口本身并未实际切换。如果我的期望不切实际,那也没问题。

所以我真的在寻找‘这个窗口/控件可以显示吗?’

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-09-16 11:24:23

使用GetWindowPlacement。它填充具有字段showCmdWINDOWPLACEMENT结构。

showCmd

指定窗口的当前显示状态。此成员可以是下列值之一。

票数 7
EN

Stack Overflow用户

发布于 2009-09-16 11:26:23

调用GetWindowLong( handle, GWL_STYLE),检查返回值是否存在WS_VISIBLE样式。

票数 12
EN

Stack Overflow用户

发布于 2009-09-16 11:23:16

我会使用GetWindowPlacement,但是我不确定我是否理解了你想要什么。它填充一个WINDOWPLACEMENT结构,然后使用showCmd成员。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1432336

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档