很棒的文章

原文地址:Qt之自定义界面(二)添加最小化、关闭按钮、添加背景作者:一去丶二三里

在进行自定义界面之后,Qt界面并不像我们想象的那么完美,也许与我们的预期大相径庭,但是不必心烦,这只不过是迈出了第一步而已,第一步既然都已经迈出去了,那么以后的路就会好走多了!

1、自定义最小化、最大化按钮

int width = width();//获取界面的宽度

//构建最小化、最大化、关闭按钮
 QToolButton *minButton = new QToolButton(this);
 QToolButton *closeButton= new QToolButton(this);

//获取最小化、关闭按钮图标
 QPixmap minPix  = style()->standardPixmap(QStyle::SP_TitleBarMinButton);
 QPixmap closePix = style()->standardPixmap(QStyle::SP_TitleBarCloseButton);

//设置最小化、关闭按钮图标
 minButton->setIcon(minPix);
 closeButton->setIcon(closePix);

//设置最小化、关闭按钮在界面的位置

minButton->setGeometry(width-46,5,20,20);
 closeButton->setGeometry(width-25,5,20,20);

//设置鼠标移至按钮上的提示信息

minButton->setToolTip(tr("最小化"));

closeButton->setToolTip(tr("关闭"));

//设置最小化、关闭按钮的样式
 minButton->setStyleSheet("background-color:transparent;");
 closeButton->setStyleSheet("background-color:transparent;");

这样我们的最小化、最大化按钮就已经出现!

效果如下:

2、自定义背景

自定义背景可以使用多种方法,在这里我就介绍三种

(1)使用 QLable,加载图片的方式

QLabel *background = new QLabel(this);

//设置标签的显示图片
 background->setPixmap(QPixmap(":/icon/login"));

//设置背景图片的位置大小
 background->setGeometry(0, 0, this->width(), this->height());

//设置图片充满整个标签

background->setScaledContents(true);

(2)使用 QLable,选择背景色的方式

QLabel *background = new QLabel(this);

//设置标签的背景色为蓝色
background->->setStyleSheet("background-color:blue");

//设置背景标签的位置大小
background->setGeometry(0, 0, this->width(), this->height());

(3)重写void paintEvent(QPaintEvent *)

void MainWidget::paintEvent(QPaintEvent *)
{
    QBitmap bitmap(this->size());
    bitmap.fill();
    QPainter painter(&bitmap);

QPixmap pixmap(":/icons/login");

painter.drawPixmap(this->rect(), pixmap);

}

这里就不演示效果了,都没问题的!

注:
    技术在于交流、沟通,转载请注明出处并保持作品的完整性。
    作者:╰☆奋斗ing❤孩子`  原文:http://blog.sina.com.cn/s/blog_a6fb6cc90101auay.html。

[转载]Qt之自定义界面(二)添加最小化、关闭按钮、添加背景_vortex_新浪博客...相关推荐

  1. [转载]Qt之自定义界面(二)添加最小化、关闭按钮、添加背景

    很棒的文章 原文地址:Qt之自定义界面(二)添加最小化.关闭按钮.添加背景作者:一去丶二三里 在进行自定义界面之后,Qt界面并不像我们想象的那么完美,也许与我们的预期大相径庭,但是不必心烦,这只不过是 ...

  2. MFC子窗口设置,添加最小化按键,显示任务栏图标,点击关闭退出程序

    MFC子窗口默认只有一个关闭按钮,并且没有任务栏图标存在,如何给子窗口添加最小化按钮并且显示任务栏图标 在窗体的属性菜单中,有Minimize Box项设置成true,就会出现最小化按钮 在窗体的On ...

  3. WPF自定义最大化最小化关闭按钮

    WPF自定义最大化最小化关闭按钮 当觉得界面自带的最大化最小化关闭按钮不好看,或者想换个位置的时候,你需要自定义最大化最小化关闭按钮 最大化按钮 最大化按钮有两种状态:最大化,跟还原状态两种显示方式. ...

  4. Qt cef3 无边框程序最小化之后,再打开 hover 状态失效

    1. 使用qt + cef3 开发的 pc 桌面程序出现一个奇怪的问题,描述如下: 1. 程序最小化之后,再最大化,所有Qt 按钮的hover状态都失效. 2. hover 失效后的程序,showNo ...

  5. Centos8 初体验 (二)最小化安装下查看已安装的软件包列表,并尝试dnf安装vim软件,以及dnf常用的一些操作

    目录 通过dnf list 查看最小化安装的软件包都有哪些 用dnf 安装软件 dnf 下载源查看: dnf 下载包到当前目录,或指定目录 查看所有包或指定包的依赖关系 检查包文件所依赖的前置条件和配 ...

  6. 第二章 Electron自定义界面(最大化、最小化、关闭、图标等等)

    一.介绍

  7. QT制作的软件全屏显示后最小化,点击任务栏图标打开时不是全屏

    QT制作的软件全屏显示后最小化,点击任务栏图标打开时不是全屏 前言 用QT做了一个小软件,把它自带的窗口栏给屏蔽了自己搞了关闭和最小化的按钮,且软件打开是全屏显示的.如今遇到的问题是,打开软件全屏显示 ...

  8. Qt 窗口的一些简单设置-标题、图标、最大化最小化按钮、任务栏图标

    一些很零散的窗体控制方法,在这总结一些. 1.更改窗体标题 this->setWindowTitle("窗体标题"); 窗体标题"就是更改的窗体标题 2.控制窗体大 ...

  9. C#实现winform软件开机自动启动并最小化到系统托盘

    一.开机自动启动: 拖一个CheckBox 1.软件启动时给CheckBox重置状态: RegistryKey R_local = Registry.LocalMachine;             ...

最新文章

  1. 图解|2018年度中国科学十大进展
  2. 延迟加载图片并监听图片加载完成
  3. 解秘 Node.js 单线程实现高并发请求原理,以及串联同步执行并发请求的方案
  4. 服务高可用:幂等性设计
  5. HTTP/2 协议规范
  6. Python高级——迭代器与生成器
  7. datetime 比较_Python 字典中key命中取值的两种方法性能比较!
  8. linux 信号量_SystemV IPC通信信号量
  9. 使用swix反编译swf文件修改版权
  10. 全球与中国调频广播发射机市场深度研究分析报告
  11. 堪称Python入门新华字典的《Python背记手册》高清无码版,开源免费下载
  12. 缺少计算机所需的介质程序,UEFI安装Win8提示缺少所需的介质驱动程序怎么办?...
  13. 远程协助计算机是灰色的,win10远程协助,win10远程协助灰色
  14. 大一C语言总结贴(持更) Part 10 随机步法
  15. 2021-06-21指针与变量 和字符数组作业。
  16. 作为一个项目经理,这七个项目管理经验你掌握了吗?
  17. 小猿圈预测2019年Linux云计算发展前景
  18. 如何解决蓝牙耳机总是声音断断续续的?
  19. 8个超好用的免费工具/软件/网站(一定有你要的)
  20. 国家行业代码数据处理为树形结构

热门文章

  1. 2021安新中学高考成绩查询,石家庄二中雄安校区•河北安新中学2019届冲刺高考百日誓师大会...
  2. mie散射理论方程_亚琛工业大学 计算化学方向 之OPT学习笔记第一部分第一节 静态光散射...
  3. mysql错误归纳_MySQL错误信息总结
  4. wx.request 请求500弹出来_精选感恩朋友的作文500字七篇
  5. 剑指offer面试题[16]-反转链表
  6. 求两字符串最长公共连续子串---C++编程
  7. 基于k8s的测试执行工具:TestKube
  8. ros 发布信息频率_ROS入门笔记二基础
  9. 简单选择排序_一文带你读懂排序算法(一):冒泡 amp; 快速选择排序 amp; 简单插入排序算法...
  10. 算法笔记之:大整数的四则运算