1、首先添加头文件:#include<QBitmap在构造函数内编辑ButtonQPixmap pix;ui->pushButton->setFixedSize(pix.size());ui->pushButton->setMask(pix.mask());其实Mask就像一个面具,它能遮盖原来Button的样子,并让它显示不同的面貌,从而实现一些图片或动态图的显示
2、制作不规则窗口首先添加头文件:#include<QPainter>和#include<QBitmap在头文件中定义公有变量:QPixmap pix)这样就可以重绘窗口,不规则窗口。
3、背景刷成黑色,前景色设为白色。方法一、paltette方式,经测试,该方法不会影响到其他控竭惮蚕斗件,推荐使用点击(此处)折叠或打开QPalette bgpal = palette()bgpal.setColor (QPalette::Background, QColor(0, 0 , 0, 255));
4、窗口整体透明,但是窗体上的控件不透明。 通过设置窗体的背景色来实现,将背景色设置为全透。点击(此处)折叠或打开QPalette pal = palette();pal.setColor(QPalette::Background, QColor(0x00,0xff,0x00,0x00))
5、绘制区域就是一个黑窟窿,如果Window本身半透,则是Window下面的内容加上半透效果,不是全透明效果。不停点击桌面,再点击这个窗口,会发现这个窗口越来越不透明,直至完全不透明了。
6、最容易想到的就是setWindowOpacity()函数了。点击(此处)折叠或打开w.setWindowOpacity(0.5); 运行:结果杯具了,此函数完全无效,因为其父窗口特殊,这个函数内部使用的系统窗口标志不被支持。