1.Qt实现窗口停靠和悬浮使用类QDockWidget,它有两个重要方法用来设置停靠特性以及停靠区域,
dw1->setFeatures(QDockWidget::DockWidgetMovable | QDockWidget::DockWidgetClosable);//设置停靠窗口特性,可移动,可关闭
dw1->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);//设置可停靠区域为主窗口左边和右边
2.将一个空间插入停靠窗体使用setWidget方法
dw1->setWidget(dte);
3.它的构造方法之一是:指定标题和父窗口
QDockWidget *dw1 = new QDockWidget("停靠窗口1",this);//构建停靠窗口,指定父类
4.在主窗口加入悬浮窗使用addDockWidget,并且可以指定停靠区域
addDockWidget(Qt::RightDockWidgetArea,dw1);
5.看创建停靠窗口完整代码
#include "dockwindow.h" #include<QTextEdit> #include <QDockWidget> DockWindow::DockWindow(QWidget *parent) : QMainWindow(parent) { setWindowTitle("停靠窗口"); QTextEdit *te = new QTextEdit("MainWindow",this); te->setAlignment(Qt::AlignCenter); setCentralWidget(te); //停靠窗口1 QDockWidget *dw1 = new QDockWidget("停靠窗口1",this);//构建停靠窗口,指定父类 dw1->setFeatures(QDockWidget::DockWidgetMovable | QDockWidget::DockWidgetClosable);//设置停靠窗口特性,可移动,可关闭 dw1->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);//设置可停靠区域为主窗口左边和右边 QTextEdit *dte = new QTextEdit("DockWindow First"); dw1->setWidget(dte); addDockWidget(Qt::RightDockWidgetArea,dw1); //停靠窗口2 QDockWidget *dw2 = new QDockWidget("停靠窗口2",this);//构建停靠窗口,指定父类 dw2->setFeatures(QDockWidget::DockWidgetFloatable | QDockWidget::DockWidgetClosable);//设置停靠窗口特性,可浮动,可关闭 QTextEdit *dte2 = new QTextEdit("DockWindow Second"); dw2->setWidget(dte2); addDockWidget(Qt::RightDockWidgetArea,dw2); //停靠窗口3 QDockWidget *dw3 = new QDockWidget("停靠窗口3",this);//构建停靠窗口,指定父类 dw3->setFeatures(QDockWidget::AllDockWidgetFeatures);//设置停靠窗口特性,具有全部停靠窗口的特性 QTextEdit *dte3 = new QTextEdit("DockWindow Third"); dw3->setWidget(dte3); addDockWidget(Qt::RightDockWidgetArea,dw3); }
6.查看运行结果:
需要程序源码的可以加我微信x241602私聊。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?