Qt界面设计1

最近刚接触Qt 对于QML做界面感觉已经很轻松了,但是想尝试一下GUI..准备做一个理财的小软件 ....慢慢记录我的一点一滴的学习经历.

自己封装界面UI 遇到了好多新手级别的问题=_=!!! 

 

1、界面透明 方法好多设置pattle 等等这里我就用这一个

ydw.setWindowFlags(Qt::FramelessWindowHint);   //在设置  Qt::WA_TranslucentBackground 属性 之前必须去掉窗体的标题栏

ydw.setAttribute(Qt::WA_TranslucentBackground);  //设置窗体透明 前面必须先调用...Qt文档上说的

2、 设置透明窗体并且贴图      

       this->setWindowFlags(Qt::FramelessWindowHint);//设置窗体无边框   
       this->setAttribute(Qt::WA_TranslucentBackground);//设置背景透明
       QPixmap pic;//支持多种图片 另外QBitmap是单一颜色图像可以自己看效果
       pic.load(":/image/qqframe.png");//加载图像
       this->resize(pic.size());//设置窗体和图片一样大  弄一张圆角图片就能实现圆角窗体了
 
 
void YdwWindow::paintEvent(QPaintEvent *)  //然后在窗体的paintEvent虚函数进行贴图 利用QPainter  OK
{
    QPainter painter(this);
    painter.drawPixmap(0, 0, pic);//绘制图像
}

 

3、圆角实现原理

                QBitmap objBitmap(size()); //QPainter用于在位图上绘画

        QPainter painter(&objBitmap); //填充位图矩形框(用白色填充)
        painter.fillRect(rect(),Qt::white);//白色rgb 255 255 255 用来和图片异或
        painter.setBrush(QColor(86,78,72)); //在位图上画圆角矩形(用黑色填充)做为重叠区
        painter.drawRoundedRect(rect(),windowRadius,windowRadius); //绘制圆角
        setMask(objBitmap);//使用setmask进行 背景一伙出现圆角

 

更多相关文章
  • TCP建立与断开连接以及错误处理(包括部分小问题)   1. TCP建立连接:三次握手,到处都有.需要注意的是ACK确认序列号是SYN携带序列号+1,不是直接相等.基本过程如图所示.   socket程序中调用connect将激发三路握手过程,connect将在成功建立连接或者出错才返回.   (1 ...
  • 昨天写了个对于我来说很复杂的sql语句. 这里先放个图: 现在的需要的数据如图:从product表中拿到id,name两个字段,从buy_contract_Item和sale_contract_Item中拿到quantity,totalMoney这两个字段,再从buy_contract和sale_c ...
  • "只要人人都献出一点爱,世界将变成美好的人间"来自歌曲"爱的奉献".在上海的时间里是我目前为止最为充实.辛苦的一年,但是我反而感觉不到一点疲惫,因为我是为了自己的未来而奋斗,更重要的是我孤身一人在上海时得到各位老师朋友对我的关爱和照顾.我相信IT之路不再孤单, ...
  • 本例介绍使用ProgressDialog 的用法,我们之前也在Dialog中简单介绍过ProgressDialog ,参见Android ApiDemos示例解析(22):App->Dialog ProgressDialog为AlertDialog的子类,ProgressDialog 无需通过 ...
  • 作者:Vamei,转载请先与我联系.阿尔法贸易公司的监控室中,山下远人用手指在空中滑动,大屏幕上的显示画面也随之变化.山下一直在等“桃疆”号的运行报告.由于电磁干扰,飞船运行报告经常会中断.但这艘飞船的方位并没有明显的电磁爆发.这意味着,飞船可能发生了什么故障.山下叹一口气,看来奖金又要泡汤了.“桃 ...
  • 你应该有过这样的遭遇,就是电脑感染上了间谍软件或广告软件.在这种情况下,解决问题的关键就是要在你的硬盘.内存或Windows注册表中找出间谍软件的所在.我最近研究了我的主要网络内的几台机器,以找到间谍软件和广告软件的感染信息.我个人建议,最好能利用一些有效的商业软件和免费软件经常进行这样的检查. 下 ...
一周排行
  • 国泰君安某站点 文件上传getshell 这站点采用的是逐浪cms 然后发现这套系统存在上传漏洞 然后顺利拿下此站点 发现存在内网 但是没进行渗透了 危害性应该算比较大吧   漏洞利用代码   <html> ...
  • 过程是一组能执行指定任务且具有返回值的脚本命令.您可以定义自己的过程,然后在脚本中反复调用它们. 您可以将过程定义放在调用过程的 .asp 文件中,也可以将通用过程放在一个共享的 .asp 文件中,然后用 SSI # ...
  • 当地时间周三,Sun微系统公司在西班牙巴塞罗那举行的3GSM全球大展上宣称,预计在今年中期,业界将研发出用于手机的下一代Java技术,而内置下一代Java技术的手机产品将会在今年年末或者明年年初亮相手机市场. Sun ...
  • 如果MainThread长时间无响应,系统会提示"XXX无响应",然后用户会关闭.那么,如何定位问题呢?无响应并不像Crash,它抓取不到异常日志,通常我们需要调试,才能定位问题.如何调试呢?1. ...
  • 头文件需要继承CCTableViewDataSource和CCTableViewDelegate //CCScrollViewDelegate virtual void scrollViewDidScroll(CCS ...
  • 第一部分: 一.yum安装LAMP平台 二.部署phpMyAdmin 第二部分: 一.搭建论坛系统Discuz 二.搭建论坛系统PhpWind 三.搭建论坛系统 PhpBB 第三部分 一.部署wordpress个人博 ...
  • 读完了<文明之光>.关注这本书是因为他的作者是位计算机学者,以前出版了关注度极高的<数学之美>.<浪潮之巅>,而我很喜欢历史,就一直想着要看这本书.文明之光最大的不同是从文明或者说 ...
  • 之前学习了Python的列表,以及编写了一个函数来进行列表的输出,这次我们就继续来学习如何把我们已经编写好的代码共享到PyPI社区,这里以上篇文章中编写的print_lol函数为例.   函数转换为模块 为了进行pr ...
  • 最近自己接触到的知识有些杂乱.最近涉及到了PLC的自动化控制.煤气柜位预测等方面的内容.PLC的学习目前中断了一阵子,最近接触了柜位预测的相关算法--神经网络.最小二乘法等相关的算法.今天先简单介绍一下,自己做的一个 ...
  • C语言结构体初始化的三种方法:原文链接http://www.2cto.com/kf/201503/386575.html   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 ...