博客
关于我
Qt笔记——布局管理三件套分割窗口、停靠窗口和堆栈窗口
阅读量:794 次
发布时间:2023-03-03

本文共 1278 字,大约阅读时间需要 4 分钟。

布局管理三件套

布局管理是 Qt 开发中常用的技术之一,主要包括 QSplitter、QDockwidget 和 QStackedWidget 三个关键组件。这些组件为程序窗口布局提供了灵活的管理方式,适用于不同需求的开发场景。

QSplitter分割窗口

QSplitter 是 Qt 中最常用的布局管理组件之一,主要用于将主窗口水平或垂直分割成多个区域。通过 QSplitter,可以轻松实现窗口的多区划分,便于管理各个区域的显示内容。

以下是使用 QSplitter 实现分割窗口的典型代码示例:

#include "mainwindow.h"
#include
#include
#include
#include
int main(int argc, char *argv) {
QApplication a(argc, argv);
QFont font("ZYSong18030", 12);
a.setFont(font);
QSplitter *splitterMain = new QSplitter(Qt::Horizontal); // 新建水平分割窗口
QTextEdit *textLeft = new QTextEdit();
QTextEdit *textRight = new QTextEdit();
textLeft->setText("这是左侧区域");
textRight->setText("这是右侧区域");
splitterMain->addWidget(textLeft);
splitterMain->addWidget(textRight);
QMainWindow *mainWindow = new QMainWindow();
mainWindow->setCentralWidget(splitterMain);
mainWindow->show();
return a.exec();
}

以上代码示例展示了如何通过 QSplitter 实现一个水平分割窗口,将窗口分为两个区域,并设置各区域的显示内容。

QDockwidget停靠窗口

QDockwidget 是另一个常用的布局管理组件,主要用于创建可以停靠在窗口周围的工具窗口。通过 QDockwidget,开发者可以轻松实现工具窗口的定位和管理,提升程序的用户体验。

QStackedWidget堆栈窗口

QStackedWidget 是一个基于堆栈布局的窗口管理组件,主要用于管理多个窗口或 UI 片面的显示。通过 QStackedWidget,可以实现窗口的切换显示效果,用户可以通过简单的方式切换不同界面。

通过以上三大布局管理组件,开发者可以根据具体需求灵活配置程序窗口布局,实现高效的 UI 管理。

转载地址:http://sfxfk.baihongyu.com/

你可能感兴趣的文章
Pinterest 大规模缓存集群的架构剖析
查看>>
pintos project (2) Project 1 Thread -Mission 1 Code
查看>>
PinYin4j库的使用
查看>>
PIP
查看>>
pip install goose-extractor // SyntaxError: Missing parentheses in call to 'print'
查看>>
pip install mysqlclient报错
查看>>
pip install 出现报asciii码错误的解决
查看>>
pip throws TypeError: parse() got an unexpected keyword argument ‘transport_encoding‘ 在尝试安装新软件包时
查看>>
pip 下载慢
查看>>
pip 升级报错AttributeError: ‘NoneType’ object has no attribute ‘bytes’
查看>>
pip 安装opencv-python卡死
查看>>
pip 安装出现异常
查看>>
Pip 安装失败:需要 SSL
查看>>
Pip 安装挂起
查看>>
pip 或 pip3 为 Python 3 安装包?
查看>>
pip 文件损坏导致 pip无法使用 报错 ImportError: cannot import name 'main' from 'pip._int
查看>>
pip/pip3更换国内源
查看>>
pip3 install PyQt5 --user 失败
查看>>
pip3命令全解析:Python3包管理工具的详细使用指南
查看>>
pip3安装命令重复创建文件‘/tmp/pip-install-xxxxx/package‘失败
查看>>