QT DocketWidget
2025-06-27
2
0
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
m_edit = new QTextEdit(this);
setCentralWidget(m_edit);
m_d1 = new QDockWidget("d1 dockwidget",this);
m_d1->setAllowedAreas(Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea);
QListWidget* custom = new QListWidget(m_d1);
custom->addItems(QStringList()
<< "aa"
<< "bbb");
m_d1->setWidget(custom);
addDockWidget(Qt::LeftDockWidgetArea, m_d1);
m_d2 = new QDockWidget("d2 dockwidget",this);
m_d2->setAllowedAreas(Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea);
Form* f = new Form(this);
/*
QListWidget* custom2 = new QListWidget(m_d2);
custom2->addItems(QStringList()
<< "111"
<< "222");
m_d2->setWidget(custom2);*/
m_d2->setWidget(f);
addDockWidget(Qt::LeftDockWidgetArea, m_d2);
QMenu *dockmenu = menuBar()->addMenu(tr("&Dock"));
#if 0
QAction *dock1 = new QAction( tr("&Dock1 Show"), this);
QAction *dock2 = new QAction(tr("&Dock2 Show"), this);
dockmenu->addAction(dock1);
dockmenu->addAction(dock2);
connect(dock1,&QAction::triggered,[=](){
m_d1->show();
qDebug()<<"dock1";
});
connect(dock2,&QAction::triggered,[=](){
m_d2->show();
qDebug()<<"dock2";
});
#else
dockmenu->addAction(m_d1->toggleViewAction());
dockmenu->addAction(m_d2->toggleViewAction());
#endif
}