내 연락처 정보
우편메소피아@프로톤메일.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
목차
Qt에서는 다중 창 응용 프로그램을 구현하기 위해 자식 창(하위 창)을 만들고 관리할 수 있습니다.
하위 창은 대화 상자, 독립 창 또는 MDI(다중 문서 인터페이스) 하위 창일 수 있습니다.
QDockWidget 클래스를 통해 하위 창을 만듭니다.
- 자식 창 객체를 만듭니다: QDockWidget* DockWidget=new QDockWidget();
- 기본 창에 하위 창을 추가합니다. this->addDockWidget(Qt::LeftDockWidgetArea, DockWidget);
- 하위 창 제목 설정: DockWidget->setWindowTitle("하위 창 제목입니다.");
- 하위 창에 컨트롤을 추가할 때 이 창에 대한 하위 컨트롤을 직접 설정할 수 없습니다.
- 먼저 별도의 QWidget 객체를 만든 다음 이 QWidget 객체에 제어 기능을 설정합니다.
- 그런 다음 이 QWidget 객체를 DockWidget으로 설정합니다.
//为dockWidget赋予QWidget对象 QWidget* container=new QWidget(); dockWidget->setWidget(container);
- DockWidget은 하나의 QWidget 객체만 포함할 수 있으므로 새 컨트롤을 추가하려면 이를 QWidget 객체에 추가해야 합니다.
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); QDockWidget* dockWidget=new QDockWidget(); this->addDockWidget(Qt::LeftDockWidgetArea,dockWidget); dockWidget->setWindowTitle("这是子窗口的标题"); //为dockWidget赋予QWidget对象 QWidget* container=new QWidget(); dockWidget->setWidget(container); //创建两个控件 QLabel* label=new QLabel("这是一个label控件"); QPushButton* pushButton=new QPushButton("这是一个按钮"); //创建一个布局管理利器,并且设置到QWidget对象中 QVBoxLayout* layout=new QVBoxLayout(); container->setLayout(layout); //将两个控件添加到布局管理器中 layout->addWidget(label); layout->addWidget(pushButton); }
- setAllowAreas(Qt::DockWidgetArea | Qt::DockWidgetArea) 메서드를 통해 허용되는 도킹 위치를 설정합니다. 기본값은 Qt::LeftDockWidgetArea - 왼쪽입니다.
- 4가지 위치를 설정할 수 있으며 기본 위치는 위입니다.
- Qt::TopDockWidgetArea——위로
- Qt::BottomDockWidgetArea——아래
- Qt::LeftDockWidgetArea——권
- Qt::RightDockWidgetArea——참고