Qt QSS知识点记录

一、border-image的使用
具体使用方法参考css3的相关说明,这里主要记录一个使用技巧。
使用时发现按照css3指定的方法来设置边缘非拉伸区的宽度并没有效果。如
border-image: url(test.png) 10 10 10 10;
后来在网上搜索到一篇文章,提供了一个解决方法:
border-image: url(test.png) 10 10 10 10;
border-top: 10px solid transparent;
border-right: 10px solid transparent;
border-bottom: 10px solid transparent;
border-left: 10px solid transparent;

的确能实现想要的效果。

二、Qss覆盖的问题
情景:需要改变一个已经有样式表的控件的外观,对其设置样式表,发现设置无效。
通常在使用别人的框架进行开发时,会出现上述情景。
解决此问题的方法是一个hack技术:

QTimer::singleShot(0, obj, SLOT(changedStyle()));

在程序初始化完成后,发送一条消息来改变样式表,这样原先的样式就会被覆盖。具体的原理还无法解释。

猜你喜欢

转载自blog.csdn.net/u012790503/article/details/66472727