i可以使用Isvisible((检查窗口小部件,但是当设置标志qtool时,有时会发生小部件在另一个小部件下方的堆栈中,因此用户看不到它。有什么方法能给我这个信息吗?
问候Georg
检查visibleregion((方法怎么样?如果涵盖了该项目,它将返回一个空的Qregion。您可以与Isempty((
联系您还可以使用Rise((
我在Windows上的PYQT5有类似的问题。QT方法visibleRegion()
或isVisible()
表明,而实际上却是不可见的。对我有用的唯一解决方案:
import win32gui, win32con # from pywin32 package
def is_widget_obscured(widget):
hwnd = widget.winId()
hwnd_above = win32gui.GetWindow(hwnd, win32con.GW_HWNDPREV)
return hwnd_above != 0
GetWindow()
的文档:https://learn.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-getwindow