1
假设我有QPushButton
,如果我按下按钮,那么我将显示一个QFrame
。当按钮靠近屏幕的边缘时,QFrame
的某些部分无法看到。如何确保QFrame
在窗口外?如何确保QWidget不在屏幕上?
假设我有QPushButton
,如果我按下按钮,那么我将显示一个QFrame
。当按钮靠近屏幕的边缘时,QFrame
的某些部分无法看到。如何确保QFrame
在窗口外?如何确保QWidget不在屏幕上?
我希望你需要以下的一般QWidget
检测方法..
bool IsOutOfDesktop(QWidget *w)
{
QDesktopWidget *desktopWidget = QApplication::desktop();
QRect screenRect = desktopWidget->screenGeometry(&w);
QPoint topLeft = w.mapToGlobal(w.geometry().topLeft());
QPoint bottomRight = w.mapToGlobal(w.geometry().bottomRight());
if(!screenRect.contains(topLeft) || !screenRect.contains(bottomRight))
return true;
return false;
}
这非常有用,非常感谢! – koilin
无法刚才设置的位置为-2倍的小部件的大小? – Clearer