Qt基础学习(5)-----抽屉效果之QToolBox

2023-05-16

[cpp]  view plain copy print ?
  1. //mydialog.h  
  2. #ifndef MYDIALOG_H  
  3. #define MYDIALOG_H  
  4. #include <QDialog>  
  5. class QToolBox;  
  6. class MyDialog : public QDialog  
  7. {  
  8.   Q_OBJECT  
  9. public:  
  10.   explicit MyDialog(QWidget *parent = 0);  
  11. signals:  
  12. public slots:  
  13. private:  
  14.   QToolBox *toolBox;  
  15. };  
  16. #endif // MYDIALOG_H  


 

 

[cpp]  view plain copy print ?
  1. //mydialog.cpp  
  2. #include "mydialog.h"  
  3. #include <QtGui/QToolBox>  
  4. #include <QtGui/QWidget>  
  5. #include <QPushButton>  
  6. #include <QtGui/QHBoxLayout>  
  7. #include <QtGui/QVBoxLayout>  
  8. MyDialog::MyDialog(QWidget *parent) :  
  9.   QDialog(parent)  
  10. {  
  11.   //新建一个QToolBox  
  12.   toolBox = new QToolBox(this);  
  13.   
  14.   //新建一个QWidget 添加到QToolBox中  
  15.   QWidget *widget = new QWidget();  
  16.   QIcon iconHahaya(":/new/ico/images/hahaya.ico");  
  17.   QPushButton *buttonHahaya = new QPushButton(iconHahaya, "hahaya");  
  18.   QIcon iconZhangSan(":/new/ico/images/zhangsan.ico");  
  19.   QPushButton *buttonZhangSan = new QPushButton(iconZhangSan, "zhangsan");  
  20.   QVBoxLayout *layout = new QVBoxLayout();  
  21.   layout->addWidget(buttonHahaya);  
  22.   layout->addWidget(buttonZhangSan);  
  23.   widget->setLayout(layout);  
  24.   
  25.   //新建一个QPushButton 添加到QToolBox中  
  26.   QIcon iconLiSi(":/new/ico/images/lisi.ico");  
  27.   QPushButton *buttonStrange = new QPushButton(iconLiSi, "lisi");  
  28.   
  29.   //向QToolBox中添加第一个抽屉 名字为Friend  
  30.   toolBox->addItem(widget, "Friend");  
  31.   QIcon iconFriend(":/new/ico/images/friend.ico");  
  32.   //设置第一个抽屉的图标  
  33.   toolBox->setItemIcon(0, iconFriend);  
  34.   
  35.   //向QToolBox中添加第二个抽屉 名字为Strange  
  36.   toolBox->addItem(buttonStrange, "Strange");  
  37.   QIcon iconStrange(":/new/ico/images/strange.ico");  
  38.   toolBox->setItemIcon(1, iconStrange);  
  39.   
  40.    //设置抽屉内控件距离  
  41.   toolBox->layout()->setSpacing(0);  
  42.   
  43.   
  44.   QHBoxLayout *hLayout = new QHBoxLayout();  
  45.   hLayout->addWidget(toolBox);  
  46.   hLayout->setMargin(0);  
  47.   
  48.   this->setLayout(hLayout);  
  49.   this->resize(100, 200);  
  50.   this->setWindowTitle("QToolBoxDemo");  
  51. }  


 

 

[cpp]  view plain copy print ?
  1. //main.cpp  
  2. #include <QtGui/QApplication>  
  3. #include "mydialog.h"  
  4. int main(int argc, char *argv[])  
  5. {  
  6.   QApplication a(argc, argv);  
  7.   MyDialog dialog;  
  8.   dialog.show();  
  9.   return a.exec();  
  10. }  


 

程序运行截图:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Qt基础学习(5)-----抽屉效果之QToolBox 的相关文章

  • SQLite(3) Windows安装小结

    SQLite简介 直接引用百度百科SQLite介绍 xff1a SQLite xff0c 是一款轻型的数据库 xff0c 是遵守ACID的关系型数据库管理系统 xff0c 它包含在一个相对小的C库中 它是D RichardHipp建立的公有
  • 应用宝YSDK道具直接支付解决和遇到的坑

    1 腾讯的应用宝中游戏道具直购的最大坑点在于 xff1a 文档乱 杂 xff0c 很难看懂 xff1b 特别单机游戏中道具直购直购是最坑的 xff0c 本人跟着腾讯应用宝YSDK官方文档一步一步的进行介入 xff0c 怎么都无法验证签名成功
  • 【滤波算法】KF及其衍生

    1 KF家族 xff08 和优化的比较 xff09 卡尔曼滤波器是1958年卡尔曼等人提出的对系统状态进行最优估计的算法 随后基于此衍生了各种变体算法 xff0c 比较常用的有扩展卡尔曼滤波EKF 迭代扩展卡尔曼滤波IEKF 误差状态卡尔曼
  • Google Pay 谷歌支付(gateway = stripe)

    Google pay 国际版开发 一 官网地址 xff08 科学上网 xff09 官方对接文档 https developers google com pay api android overview Stripe对接Google Pay
  • Python(算法综合)问题 G: 图的遍历——广度优先搜索

    问题 G 图的遍历 广度优先搜索 题目描述 广度优先搜索遍历类似于树的按层次遍历的过程 其过程为 xff1a 假设从图中的某顶点v出发 xff0c 在访问了v之后依次访问v的各个未曾被访问过的邻接点 xff0c 然后分别从这些邻接点出发依次
  • error while loading shared libraries: lib*.so: cannot open shared object file: No such file or

    原文地址 https www cnblogs com Recan p 6012305 html 相关文章 1 解决error while loading shared libraries libXXX so X cannot open sh
  • SecureCRT串口log输出时间信息

    原文地址 SecureCRT串口log输出时间信息 wfzlry的博客 CSDN博客 securecrt显示时间 目录 0 SecureCRT版本信息 1 连接串口之前的全局设定 xff1a 2 Quick Connect连接串口 3 查看
  • Unresolved reference: BR

    我遇到的问题是JDK版本过新导致的找不到资源 在Android studio Fox版本里默认是jdk11改为1 8即可成功编译
  • Java基础22 多线程之多生产者多消费者

    一 单一生产者消费者 包子案例 多个类 xff08 称为线程一类 xff0c 线程二类 xff09 需要一个共有的变量 xff0c 即将这个变量封装为一个类 xff08 称为属性类 xff09 的属性 xff0c 注意属性类的属性修饰符为p
  • 后台开发SQL技术总结

    一 字符串截取 1 substring str pos 用法 从字符串的第 4 个字符位置开始取 xff0c 直到结束 mysql gt select substring 39 example com 39 4 43 43 substrin
  • android 系统调试小知识

    xff11 xff0c 没有串口 xff0c adb 测试过程断开连接可以提前输入下面指令 xff0c 这样adb 断开也可以在后台抓log xff0c 然后copy 出来分析就可以了 nohup logcat gt sdcard 111
  • 让vivado支持(gd/winbond/mx)原本官方不支持的FLASH烧写

    软硬件环境 主控 Zynq UltraScale xczu9 Flash GD25Q128E GD55B02GE 系统 petalinux 2021 2 Kernel 5 10 0 Vivado 版本 2022 2 概述 承接上一篇 zyn
  • 约瑟夫环问题详解

    已经经历过两次考试中都遇到了约瑟夫环问题 xff0c 就问题本身而言并不难 xff0c 主要是在理解问题上经常由于题干较短 xff0c 没有理解清楚意思从而导致无法解题 问题描述 xff1a 约瑟夫环 xff08 约瑟夫问题 xff09 是
  • 【XR】画面剧烈颤动与延时

    VR中的ATW xff08 Asynchronous TimeWarp xff09 技术可以帮助解决由于帧率不稳定 延迟等因素导致的运动模糊和晕眩问题 当VR头戴式显示器无法在下一帧之前及时更新时 xff0c ATW会使用上一帧数据来生成一
  • Ubuntu 20.04安装RTL8812BU网卡驱动教程

    系统版本 xff1a Ubuntu 20 04 3 LTS 网卡芯片 xff1a RTL8812BU 目录 前言网卡芯片识别Windows下查看网卡芯片Linux下查看网卡芯片 安装驱动备注 前言 由于以后工作需要使用Linux系统 xff
  • mysql [Err] 1118 - Row size too large (> 8126).

    错误代码 xff1a 1118 Row size too large gt 8126 Changing some columns to TEXT or BLOB may help In current row format BLOB pre
  • 批处理taskkill运行结束不掉程序以及停留问题

    我原来就一句代码 TASKKILL F IM QQ exe 保存为taskkill bat xff0c 结果运行起来一直显示 xff0c 但是没有结束掉进程 xff0c 百度搜索才知道taskkill为系统关键字 xff0c 不能命名为ta
  • 学习挖掘机和程序员哪个好

    guanghuacheng guanghuacheng 等 级 xff1a 结帖率 xff1a 0 00 楼主发表于 xff1a 2011 04 14 16 57 13 快要高考了 学习成绩一般 不想上了 家里让去学挖掘机 我不想去 要想培
  • irtualbox虚拟机进行网络配置,实现内网外网互通!桥接!

    irtualbox虚拟机进行网络配置 xff0c 实现内网外网互通 xff01 桥接 xff01 xff01 以下是引用片段 xff1a 实验环境如下 xff1a virtualbox上运行的虚拟机 xff1a windows 2008 e
  • 我的2014作的一手好死,2015求轻虐

    真的好想上来开头就写 新的一年 xff0c 全新的自己 xff0c 但是这样自欺欺人的话我还是别说了 xff0c 省得一大批损友又来吐嘈我 2015年希望找到自己的另一半这样的话我也不想再提了 xff0c 因为这样写了两年 依旧单身 xff

随机推荐