Demo的效果


头文件中的变量声明

    //退出动作
    QAction* exit;
    //菜单栏菜单
    QMenu* filemenu;
    QMenu* actiona;
    //在状态栏的标签控件
    QLabel* label;
    //两个停靠窗口
    QDockWidget *dockwidget;
    QDockWidget *dockwidget_textbox;

CPP源文件中的对象定义

    //创建+初始化按钮,将要放到第一个窗口内
    QPushButton *button=new QPushButton(tr("Exit"),this);
    QObject::connect(button,SIGNAL(clicked()),this,SLOT(close()));

    //创建+初始化,放到第二个窗口
    QTextEdit * textbox=new QTextEdit;

    //创建两个停靠窗口对象,停靠在this窗口
    dockwidget=new QDockWidget(this);
    dockwidget_textbox=new QDockWidget(this);

设置停靠窗口的停靠边允许,内部空间和窗口标题

    //允许停靠到四个边的dockwidget停靠窗口
    dockwidget->setWindowTitle(tr("dockwidget_button"));
    dockwidget->setAllowedAreas(Qt::AllDockWidgetAreas);
    dockwidget->setWidget(button);
    //允许停靠到左和下边的停靠窗口
    dockwidget_textbox->setWindowTitle(tr("dockwidget_textbox"));
    dockwidget_textbox->setAllowedAreas(Qt::LeftDockWidgetArea|Qt::BottomDockWidgetArea);
    dockwidget_textbox->setWidget(textbox);

初始化时窗口的配置和动作对其实现显示与隐藏

    //初始化把停靠窗口显示到左边和底边上
    this->addDockWidget(Qt::LeftDockWidgetArea,dockwidget);
    this->addDockWidget(Qt::BottomDockWidgetArea,dockwidget_textbox);
    //设置菜单栏动作使其控制停靠窗口的显示与隐藏
    this->actiona->addAction(dockwidget_textbox->toggleViewAction());
    this->actiona->addAction(dockwidget->toggleViewAction());

demo的源码:http://pan.baidu.com/s/1jGAm1T0

QT子窗口及停靠实现的更多相关文章

  1. Qt 子窗口监听主窗口信号

    Qt 子窗口监听主窗口信号(转载)  原文链接:https://www.cnblogs.com/ybqjymy/p/12169762.html 1 MainWindow *ptr = NULL; 2 ...

  2. QT 子窗口退出全屏

    m_pWidget代表子窗口, 子窗口显示全屏: m_pWidget->setWindowFlags(Qt::Dialog); m_pWidget->showFullScreen(); 子 ...

  3. qt 子窗口内嵌到父窗口

    类声明 动态申请子窗口类对象 ClassA *a = new ClassA(this); 隐藏边框 a->setWindowFlags(Qt::CustomizeWindowHint|Qt::F ...

  4. Qt子窗口QMidSubwindow全屏出现的问题总结

    我的需求:想全屏一个子窗口QMidSubwindow,禁止显示最大化最小化和关闭按钮. 我开始尝试的是网上介绍的方法,把结果展现给大家一下,最后再总结: 方法1:QMidSubwindow直接调用sh ...

  5. Qt子窗口设置背景色只能应用到其中的部件的问题

    问题描述:设置父窗口后子窗口会嵌在父窗口中,背景变透明,此时用qss设置子窗口的背景色发现只应用到的子窗口的控件中,除控件外的地方并没有应用到背景色. 解决方法:不使用qss设置背景色,重写paint ...

  6. Qt 子窗口内嵌到父窗口中(无边框附体show即可)good

    有时需要把一个子窗口内嵌进入父窗口当中. 我们可以这样做 1.新建一个QWidget 或者QDialog的子类 ClassA(父类为ClassB) 2.在新建类的构造函数中添加设置窗口属性 setWi ...

  7. Qt 子窗口内嵌到父窗口中

    有时需要把一个子窗口内嵌进入父窗口当中. 我们可以这样做 1.新建一个QWidget 或者QDialog的子类 ClassA(父类为ClassB) 2.在新建类的构造函数中添加设置窗口属性 setWi ...

  8. QT 子窗口监听主窗口信号(超级简单,但是好用,比如主窗口移动的时候,子窗口不要再继续处理任务)

    MainWindow *ptr = NULL; ptr = (MainWindow*)parentWidget(); connect(ptr, SIGNAL(param_result(bool)), ...

  9. Qt全屏显示窗口、子窗口的相关函数

    Qt全屏显示函数         window.showFullScreen() Qt最大化显示函数         window.showMaximized() Qt最小化显示函数         ...

随机推荐

  1. matlab 学习之常用函数2

    -----------------------------author:midu ---------------------------qq:1327706646 ------------------ ...

  2. 【PHP开发】远程文件(图片)下载

    这一篇文章介绍的方法不算原创了,只是引用的别人的文章,加上自己的注释,因为接触php时间不长,所以尝试的东西比较多,自己加的注释也比较简单,php高手请略过. 我要用到远程下载图片,是在做微信公众平台 ...

  3. <LeetCode OJ> 121. /122. Best Time to Buy and Sell Stock(I / II)

    Say you have an array for which the ith element is the price of a given stock on day i. If you were ...

  4. android 导入项目 项目中文字乱码问题

    乱码问题出现了几次,一直没有在意,今天又出现了,现总结如下: eclipse之所以会出现乱码问题是因为eclipse编辑器选择的编码规则是可变的.一般默认都是UTF-8或者GBK,当从外部导入的一个工 ...

  5. 九度OJ 1009:二叉搜索树 (二叉树)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:6321 解决:2767 题目描述: 判断两序列是否为同一二叉搜索树序列 输入: 开始一个数n,(1<=n<=20) 表示有n个需 ...

  6. PHP 关于路径的问题

    <?php var_dump(basename(__FILE__)); //返回当前文件/文件夹的的文件名/目录名 var_dump(dirname(__FILE__)); //返回当前文件/文 ...

  7. 2017-2018-1 20179209《Linux内核原理与分析》第七周作业

    一.实验 1.1task_struct数据结构 Linux内核通过一个被称为进程描述符的task_struct结构体来管理进程,这个结构体包含了一个进程所需的所有信息.它定义在linux-3.18.6 ...

  8. Eclipse使用方法和技巧二十六:浅谈快捷键

            网络上到处都是eclipse有哪些经常使用的快捷键,当中还有非常多讲得着实不错.这里就不再狗尾续貂而是谈谈别的这段时间的一些思考.近期增加了开发团队.代码量突突的上去了.同一时候也发现 ...

  9. js添加方法和邦定事件

    function(obj,objArr){ if(($(obj).attr("type") == "checkbox" && $j(obj).p ...

  10. LeetCode:递增的三元子序列【334】

    LeetCode:递增的三元子序列[334] 题目描述 给定一个未排序的数组,判断这个数组中是否存在长度为 3 的递增子序列. 数学表达式如下: 如果存在这样的 i, j, k,  且满足 0 ≤ i ...