[置顶] qt自定义按钮去除边框和背景色
[置顶] qt自定义按钮去除边框和背景色
故障处理(3)
版权声明:本文为博主原创文章,未经博主允许不得转载。
我们常常在qt designer拖放一个按钮,有时qt自带的按钮模式不是特别美观,就需要我们自己定义一个按钮,只需在这个按钮上添加图标图片就可以了。
首先我们需要新建一个qt资源文件,然后添加上我们需要的图标图片,不会建立资源文件的,请百度。
在设计界面的按钮上点击右键,选择“改变样式表”,进入编辑“样式表对话框”,点击“添加资源”,选择“border-image”,然后选择图标图片。
然后就能在设计界面看到自定义的按钮了。
此时本文的问题就出现了,虽然这种方法添加的按钮,没有直接修改icon属性添加的边框,但是执行时,存在背景色,如图:
然后猜想是否button控件某个属性设置问题,遂查看button属性,发现focusPolicy属性,默认是StrongFocus尝试把它修改为NoFocus。
修改完毕后,执行,运行结果正常。
自己的想法:自己实在Ubuntu系统上创建的程序,可能跟操作系统有一定关系,但是focusPolicy属性从字面上理解也不是背景色的问题,可能是button控件自身的焦点的问题,就像文本编辑框有光标焦点一样,这里把焦点设置为无,就没有那个类似背景色的焦点了,可能也是跟系统有关把,有兴趣可以在window上验证下。