在Qt主窗口的右下角放置弹出窗口
我试图在主窗口的右下角放置一个弹出窗口,即使主窗口被调整大小或展开,它也应该可见。
如何在Qt 5.9(C++)中做到这一点?在Qt主窗口的右下角放置弹出窗口
回答:
您的问题中的重要任务是在调整QMainWindow或移动QMainWindow时移动弹出窗口,因此我们必须重写resizeEvent
和moveEvent
方法。下面的代码演示了如何做到这一点:
void MainWindow::movePopUp() {
QPoint p = mapToGlobal(QPoint(size().width(), size().height())) -
QPoint(popup->size().width(), popup->size().height());
popup->move(p);
}
void MainWindow::resizeEvent(QResizeEvent *event)
{
movePopUp();
QMainWindow::resizeEvent(event);
}
void MainWindow::moveEvent(QMoveEvent *event)
{
movePopUp();
QMainWindow::moveEvent(event);
}
输出:
完整的例子是here
以上是 在Qt主窗口的右下角放置弹出窗口 的全部内容, 来源链接: utcz.com/qa/260084.html