QT设置子窗口在父窗口特定位置上显示
时间: 2024-09-30 17:16:09 浏览: 50
Qt6:子窗口向父窗口传值
在Qt中,如果你想让一个子窗口在父窗口的特定位置显示,你可以使用`setGeometry()`函数来设置窗口的几何属性。这个函数需要四个整数作为参数,分别代表窗口的x坐标、y坐标、宽度和高度。例如:
```cpp
QMainWindow *parentWindow = new QMainWindow();
// 初始化并设置父窗口的基本属性...
MySubWindow *subWindow = new MySubWindow(parentWindow); // 子窗口类,需要继承自QWidget或QDialog
subWindow->setParent(parentWindow); // 将子窗口关联到父窗口
// 确定子窗口在父窗口左上角,宽高自定义为800x600像素
int x = parentWindow->width() / 2 - subWindow->width() / 2; // 根据需要调整偏移量
int y = parentWindow->height() / 2 - subWindow->height() / 2;
subWindow->setGeometry(x, y, subWindow->width(), subWindow->height());
// 显示子窗口
subWindow->show();
```
这里假设`MySubWindow`是你创建的子窗口类,并且它继承了`QWidget`或`QDialog`。通过这种方式,子窗口会在父窗口的中心位置显示。如果想改变其他位置,只需相应地调整`x`和`y`的值即可。
阅读全文