2017-02-09 13 views
1
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Два QWidget в QMainWindow, чтобы минимизируют кнопку и заголовок окна

выше мой код образец MainWindow конструктора. Ot имеет два qTextEdits, которые находятся в макете VerticalBox. Я хочу, чтобы и у textEdits была строка заголовка, и кнопка минимизации и максимизации, чтобы в один момент я мог использовать один из них или оба из них. Но, как вы можете видеть вывод, заголовков окон нет.

Как я могу создать панель заголовка? Почему setWindowTitle("First Notepad") не отображает заголовок?

Если я ошибаюсь, предложите, как бы я мог продолжить. Любое предложение приветствуется.

То, что я пытаюсь, похоже на одно MainWindow с несколькими под-окнами с фиксированными позициями.

ответ

1

То, что я пытаюсь, похоже на одно MainWindow, имеющее несколько подлодок с фиксированными позициями.

Возможно, что вы ищете QMdiArea, а также несколько QMdiSubWindow.
Как упоминалось в документации `QMdiArea:

виджет QMdiArea обеспечивает область, в которой MDI окна отображается

Кроме того:

QMdiArea обычно используется в качестве центра виджет в QMainWindow для создания приложений MDI, но также может быть размещен в любом макете.

Я использовал его, но я никогда не пытался дать фиксированные позиции в подокнах. Во всяком случае, это возможно. Вероятно, QMdiArea::tileSubWindows уже достаточно для ваших требований.
Набор пользовательских заголовков и баров на окнах дается бесплатно вместо:

QMdiSubWindow представляет собой окно верхнего уровня в QMdiArea, и состоит из заголовка с декорацией окна, внутренний виджет, и (в зависимости по текущему стилю) оконную рамку и размерную ручку. QMdiSubWindow имеет собственную компоновку, состоящую из строки заголовка и центральной области для внутреннего виджета

Дополнительную информацию см. В официальной документации.