如何使用他的HWND检查窗口是否有可见的滚动条
How I can check if a Window has visible scrollbars using his HWND?
我想使用窗口的HWND(句柄)检查外部应用程序的窗口是否有垂直或水平滚动条可见,是否存在任何WinApi函数来获取此信息?我确实尝试了GetScrollInfo
函数,但它似乎无法检索有关滚动条可见性的信息。
GetScrollBarInfo
与OBJID_HSCROLL
或OBJID_VSCROLL
如何
如果idObject是OBJID_CLIENT,并且hwnd指定的窗口不是系统滚动条控件,则系统向该窗口发送SBM_GETSCROLLBARINFO消息以获得滚动条信息。这允许GetScrollBarInfo对模拟滚动条的自定义控件进行操作。如果窗口不处理SBM_GETSCROLLBARINFO消息,则GETSCROLLBARINFO函数将失败。
您可以在SCROLLBARINFO
结构中测试rgstate
,那里有一个STATE_SYSTEM_INVISIBLE
标志。
另一种可能的方法是测试GetWindowLong(hWnd, GWL_STYLE) and (WS_HSCROLL or WS_VSCROLL) <> 0
相关文章:
- QScrollArea:由垂直滚动条引起的水平滚动条
- 跟踪滚动条上的鼠标事件
- 如何在不使用滚动条的情况下使视图更改
- 通过水平滚动条更改标签
- Qt:无法直接为带有子项的小部件添加滚动条
- OnVScroll : 从 CSpinButtonCtrl 或垂直滚动条调用?
- win32 滚动条在 C/C++ 程序中不起作用
- 外观 MFC 滚动条
- 停止 QTextCursor::insertText() 修改 QTextDocument 滚动条范围
- 如何在wxRadioBox中添加滚动条
- QPainter的QWidget滚动条
- 将水平滚动条添加到控制台
- QT - 如何创建具有长 int(而不是 int)步长的滚动条?
- QListWidget 水平滚动条会导致选择消失在视野之外
- 有没有办法有条件地检查窗口是否正在使用滚动条
- 如何检查编辑控件的滚动条是否位于底部
- 如何知道CWnd滚动条是否可见
- 如何使用他的HWND检查窗口是否有可见的滚动条
- 在c++中是否有一种方法可以在不使用windows api的情况下制作带有按钮和滚动条的自定义gui ?
- 如何知道水平滚动条是否显示在QPlainTextEdit继承的类中