Win32:检查窗口是否最小化

12

如何使用win32 api检查窗口是否最小化?

3个回答

27

10
使用IsIconic Windows API。

9

尝试使用GetWindowLong函数并测试WS_MINIMIZE样式

LONG lStyles = GetWindowLong(GWL_STYLE);

if( lStyles & WS_MINIMIZE )
    ATLTRACE(_T("minimized"));
else
    ATLTRACE(_T("not minimized"));

你还可以查询 GWL_EXSTYLES

1
那有什么比IsIconic更容易的呢? - GolezTrol
4
我从未声称这个任务是“更容易”的。原帖的作者问如何使用win32 API完成它。 提供这个答案向原帖作者展示了如何检查窗口样式,这可能会在将来有所帮助... - user206705
1
有趣的是,WinAPI文档将WS_MINIMIZE标记为“窗口最初被最小化。与WS_ICONIC样式相同。”这里的“最初”是什么意思? - Claudiu
WS_MINIMIZE是一种可以在创建窗口时应用的样式,它是在这个上下文中使用的。有关详细信息,请参阅CreateWindowEx。 - user206705
3
+1,这是不正确的。当窗口被恢复时,窗口并不会失去WS_MINIMIZE状态。 - Ana Betts
显示剩余4条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接