在应用开发中,有时候为了美观会在UI界面中增加不规则的按钮

现在我们就来看看Qt中是怎么实现不规则按钮的

///////////////////////////////////////////////////////////////////////////////////

实现不规则按钮的时候,我们选用的按钮类是 QToolButton 类 ,在这种类型的按钮上贴图的时候,图片自动居中

实现的主要代码如下

1 QPixmap pixmap(":/2.png");
2 /*用于隐藏toolbutton的边框*/
3 toolBtn->setStyleSheet("QToolButton{border:0px;}");
4 /*调整按钮大小以适应图片的尺寸*/
5 toolBtn->resize(pixmap.size());
6 toolBtn->setIconSize(pixmap.size());
7 toolBtn->setIcon(QIcon(pixmap));
8 /*通过掩码设置按钮形状以适应图片的形状*/
9 toolBtn->setMask(pixmap.mask());

就这样 不规则按钮就实现了

如果没有

1 toolBtn->setStyleSheet("QToolButton{border:0px;}");

这一句 , 图片周围可能出现黑框或虚线框

如果要去掉虚线框 , 可以将button的size 增大1到2个像素大小 , 这样就能消除黑线框 ,但是这样不是太好

 

posted on 2013-07-21 10:53  wowk  阅读(2262)  评论(0编辑  收藏  举报