gpt4 book ai didi

c++ - QMainWindow 中的两个 QWidget 具有最小化按钮和窗口标题

转载 作者:行者123 更新时间:2023-11-30 05:17:24 24 4
gpt4 key购买 nike

MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
textEdit1 = new QTextEdit();
textEdit1->setWindowTitle("First Notepad");
textEdit2 = new QTextEdit();
textEdit2->setWindowTitle("First Notepad");
layout = new QVBoxLayout();
layout->addWidget(textEdit1);
layout->addWidget(textEdit2);

newTab = new QWidget();
newTab->setLayout(layout);

ui->setupUi(this);
setCentralWidget(newTab);
}

enter image description here

以上是我的MainWindow构造函数的代码示例。 Ot 有两个 qTextEdits,它们位于 VerticalBox 布局中。我希望 textEdits 都有一个标题栏以及最小化和最大化按钮,这样我就可以同时使用其中一个或两个。但是正如您所看到的输出,窗口标题栏不存在。

如何让标题栏出现?为什么 setWindowTitle("First Notepad") 不显示标题?

如果我做错了,请建议我可以继续的其他方式。欢迎提出任何建议。

我正在尝试的就像一个主窗口有多个固定位置的子窗口。

最佳答案

What I am trying is like one MainWindow having multiple sub-windows with fixed positions.

你要找的可能是QMdiArea连同多个 QMdiSubWindow .
如`QMdiArea 的文档中所述:

The QMdiArea widget provides an area in which MDI windows are displayed

另外:

QMdiArea is commonly used as the center widget in a QMainWindow to create MDI applications, but can also be placed in any layout.

我用过,但我从来没有尝试给子窗口固定位置。无论如何,这显然是可能的。大概 QMdiArea::tileSubWindows已经足够满足你的要求了。
为窗口设置自定义标题和栏是免费提供的:

QMdiSubWindow represents a top-level window in a QMdiArea, and consists of a title bar with window decorations, an internal widget, and (depending on the current style) a window frame and a size grip. QMdiSubWindow has its own layout, which consists of the title bar and a center area for the internal widget

更多详细信息,请参阅官方文档。

关于c++ - QMainWindow 中的两个 QWidget 具有最小化按钮和窗口标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42147735/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com