gpt4 book ai didi

c++ - 如何知道 CWnd 滚动条是否可见?

转载 作者:太空宇宙 更新时间:2023-11-04 14:15:23 25 4
gpt4 key购买 nike

我有一个显示图像的自定义控件。当图像超过可显示大小时,它会显示滚动条。出于某种原因,我想知道是否显示水平或垂直滚动​​条。我在 CWnd 类中找不到任何直接函数。

我找到了 GetScrollBarInfo 但没有成功检查它。这是代码:

SCROLLBARIINFO stHSBInfo;
GetScrollBarInfo( this->GetSafeHwnd(), OBJID_HSCROLL, &stHSBInfo );
if( !( STATE_SYSTEM_INVISIBLE &stHSBInfo.rgstate[0] )) // Always true
{
// Code
}

请帮忙!

最佳答案

使用 GetSystemMetrics 获取系统滚动条宽度的大小。比较 GetWindowRect 和 GetClientRect 之间自定义控件的大小。如果差异大于滚动条宽度的大小,则可见。

关于c++ - 如何知道 CWnd 滚动条是否可见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11669277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com