设置不规则按钮
我们在设计界面时可能会遇到添加不规则形状按钮的情形,可在 Qt Designer 中添加 pushButton 后对其样式进行设置,具体实现方法及向 Qt 项目导入图片的过程可以参照下方的第2~4个链接。
但是这样添加的按钮触发范围仍旧是图片的,也就是说图片的整个方形区域都可以触发按钮事件,但我们需要的是只有在非透明的部分才能触发,解决方法见最后一个链接。具体的实现思路是为按钮设置mask,代码如下:1
2
3
4QPixmap pix;
pix.load(":/images/menu.png");
ui->pushButton->setFixedSize(pix.size());
ui->pushButton->setMask(pix.mask());
参考链接:
为按钮添加多级菜单
百度了一些讲 Qt 中添加菜单的博客,大多使用 menuBar() 实现,若想为按钮添加菜单,则需要将菜单(QMenu)给按钮,因为按钮是有 setMenu() 方法的。
代码如下:1
2
3
4
5
6
7
8
9
10
11
12
13