簡體   English   中英

如何使用他的HWND檢查Window是否有可見的滾動條?

[英]How I can check if a Window has visible scrollbars using his HWND?

我想檢查外部應用程序的窗口是否使用窗口的HWND(句柄) 可見垂直或水平滾動條,是否存在任何WinApi函數來獲取此信息? 我真的嘗試GetScrollInfo函數,但似乎沒有檢索有關滾動條可見性的信息。

如何使用OBJID_HSCROLLOBJID_VSCROLL GetScrollBarInfo

如果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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM