参考链接:http://blog.csdn.net/summer_xiyer/article/details/12875899

新建一个GUI工程:

QDockWidget是QWidget的子类,也等于是说他可以像其他的Widgets一样互相嵌套,搭配布局。

1.一个简单的例子,选择QMainWindow作为基类

填写头文件:

public slots:
void on_PleaseGo_clicked();
public:
void pleaseGo();
private:
Ui::wishchin *ui;
QDockWidget* dockInsertFRight;
QDockWidget* dockInsertFLeft;
QDockWidget* dockInsertButton;

填写CPP中的构造函数:

    ui->setupUi(this);

    //捕获主界面按钮窗口
this->dockInsertButton = new QDockWidget(tr("Capture the button!"), this);
//QDockWidget* dockInsertFRight = new QDockWidget(tr("First Dock Window"), this);
//QTextEdit *dockText = new QTextEdit();
//dockText->setText("Capture the button!");
dockInsertButton->setWidget(this->ui->PleaseGo);
this->addDockWidget(Qt::RightDockWidgetArea, dockInsertButton); //捕获主界面显示窗口
QDockWidget *dockInsert = new QDockWidget(tr("Insert Dock Window"), this);
//QTextEdit *dockText3 = new QTextEdit();
//dockText3->setText("Third Window,Try to move The title.");
dockInsert->setWidget(this->ui->label_Show);
addDockWidget(Qt::RightDockWidgetArea,dockInsert); //配置第一个停靠窗口
this->dockInsertFRight = new QDockWidget(tr("First Dock Window"), this);
//QDockWidget* dockInsertFRight = new QDockWidget(tr("First Dock Window"), this);
QTextEdit *dockText = new QTextEdit();
dockText->setText("First Window,Try to move The title.");
dockInsertFRight->setWidget(dockText);
this->addDockWidget(Qt::RightDockWidgetArea, dockInsertFRight); //配置第二个停靠窗口
this->dockInsertFLeft = new QDockWidget(tr("Second Dock Window"), this);
//QTextEdit *dockText = new QTextEdit();
//dockText->setText("First Window,Try to move The title.");
QLabel* dockLabelShow =new QLabel();
dockLabelShow->setMaximumHeight(320);
dockLabelShow->setMaximumHeight(240);
dockInsertFLeft->setWidget(dockLabelShow);
this->addDockWidget(Qt::LeftDockWidgetArea, dockInsertFLeft); //配置第三个停靠窗口
QDockWidget *dockOverlay = new QDockWidget(tr("Third Dock Window"), this);
QTextEdit *dockText3 = new QTextEdit();
dockText3->setText("Third Window,Try to move The title.");
dockOverlay->setWidget(dockText3);
addDockWidget(Qt::RightDockWidgetArea, dockOverlay);

运行显示结果:

这样就实现了悬浮窗和嵌入窗,并能捕获主界面的显示Dock和按钮widget!

Qt5—嵌入停靠窗口QDockWidget的更多相关文章

  1. 停靠窗口QDockWidget

    停靠窗口QDockWidget要和QMainWindow一起搭配使用的 样式: import sys from PyQt5.QtCore import Qt from PyQt5.QtWidgets ...

  2. PyQt主窗体设置停靠窗口(QDockWidget)的叠加顺序

    PyQt提供了方便的停靠窗口控件,我们可以很方便的编写一个停靠窗口,代码和效果如下: # -*- coding: utf-8 -*-from PyQt4 import QtGui, QtCore cl ...

  3. Qt布局管理: 停靠窗口QDockWidget类(纯代码实现)

    转载:好儿郎~志在四方 详细描述: QDockWidget类提供了一个窗体部件,其可以停靠在QMainWindow,或其本身作为一个在桌面上的顶级窗口(也就是父窗体). QDockWidget类提供了 ...

  4. Qt5布局管理(二)——QDockWidget停靠窗口类

    转载:LeeHDsniper 停靠窗口类QDockWidget 实例效果 如右图所示,左半部分MainWindow是该窗口的中心窗口,右边的最下面两个停靠窗口可以跳出该窗口: 但是第一个停靠窗口只能停 ...

  5. Python+PyQt5:停靠组件QDockWidget的实现

    QMainWindow主窗体中放置停靠组件QDockWidget的实现流程: 第一步:创建QMainWindow窗体,这是承载QDockWidget的主体 第二步:创建QDockWidget组件实例, ...

  6. MFC的停靠窗口中插入对话框,在对话框中添加控件并做控件自适应

    单文档程序添加了停靠窗口后,可能会在停靠窗口中添加一些控件.在这里我的做法是在对话框上添加控件并布局,然后将这个对话框插入到停靠窗口中. 步骤 1.插入对话框,在对话框中放入控件(我的为树形控件),并 ...

  7. MFC停靠窗口实现(CDockablePane)

    工作中编写MFC界面程序时用到了停靠窗口,为了避免之后用到时再去查询,这里记录下. 步骤 1.定义一个继承自CDockablePane的类 Class CDockableTest : public C ...

  8. MFC单文档视图中嵌入GLFW窗口

    开始学习OpenGL由于有一段时间,但是glfw只有窗口区,虽然通过某种手段(移步这里)可以加入工具栏,但仍然无法作为一个标准的GUI,而直接在MFC或Qt里面使用OpenGL API感觉有诸多制肘, ...

  9. C# 将MDI窗口嵌入普通窗口

    模块化的开发,将模块合并到一起的时候,遇到了Mdi不能添加到其它窗口下的问题. 分两种情况: 将mdi窗口A设成普通窗口B的子控件,需要将A的TopLevel设置成false,但是Mdi窗口的TopL ...

随机推荐

  1. 软件工程1916|W(福州大学)_助教博客】团队Beta冲刺作业(第9次)成绩公示

    1. 作业链接: 项目Beta冲刺(团队) 2. 评分准则: 本次作业包括现场Beta答辩评分(映射总分为100分)+团队互评分数(总分40分)+博客分(总分130分)+贡献度得分,其中博客分由以下部 ...

  2. Jquery向页面append新元素之后,如何解决事件的绑定问题?

    今天有get到一个新知识点,就是当我们向页面添加新的元素之后,加载之前的函数方法就对新元素失效了,下面我来说说如何解决这个问题的? 我先看jq api文档没有找到方法,无果只好到网上找些资料,果然找到 ...

  3. MySQL7.5.15数据库配置主从服务器实现双机热备实例教程

    环境说明 程序在:Web服务器192.168.0.57上面 数据库在:MySQL服务器192.168.0.67上面 实现目的:增加一台MySQL备份服务器(192.168.0.68),做为MySQL服 ...

  4. 一些诗词摘抄qwq

    声明: 有些违规内容就删掉了--大家都能理解吧qwq 雾失楼台,月迷津渡,桃源望断无寻处.可堪孤馆闭春寒,杜鹃声里斜阳暮.--秦观<踏莎行·郴州旅舍> 郴江幸自绕郴山,为谁流下潇湘去?-- ...

  5. oculus network error ovr53225466

    最近调试oculus,搬运代码到win10平台,发现最近FB对oculus的服务程序进行了更新,必须要登陆账号才能进行调试. 于是安装oculusclient,但是登陆的过程中出现了问题,如果不用代理 ...

  6. 部署项目到tomcat时 访问项目404的问题总结

    使用tomcat服务器运行项目之前  需要把项目发布到(部署)tomcat上,然后启动服务器  运行项目 今天把以往正常运行的项目发布之后,运行时   竟然出现404  关键还不是我路径写错了   而 ...

  7. (30)导入时如何定制spring-boot依赖项的版本【转载】【从零开始学Spring Boot】

    此文章转载地址:http://www.tuicool.com/articles/RJJvMj3 请注重作者的版权. spring-boot通过maven的依赖管理为我们写好了很多依赖项及其版本,我们可 ...

  8. HDU-4451-Dressing (2012年金华赛区J题)

    Dressing Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total S ...

  9. 生成字符Banner

    生成字符Banner http://patorjk.com/software/taag __ _______/ |_ ____ ____ ____ / ___/\ __\/ _ \ / \ / _ \ ...

  10. ubuntu14.04上搭建android开发环境

    这几天心血来潮,想在ubuntu上写写android软件.所以就上网找些资料在ubuntu上搭建android环境.结果要么时不完整的,要么就是过时的. 所以我把我搭建android环境的过程写下了, ...