• 7528阅读
  • 2回复

[提问]Qt各个控件的所有子控件有办法查到吗? [复制链接]

上一主题 下一主题
离线米尔利安
 

只看楼主 倒序阅读 楼主  发表于: 2011-03-21
如题,在配置QSS时,有时需要QT内置控件的子控件名称,好调整自己想要的效果。但是找不到哪里有可以用于QSS的子控件列表。。。
比如说,我现在想要定制QCommandLinkButton,将其描述部分文字设一个内右边距。如果直接使用:
QCommandLinkButton
{
    padding-right:15px;
}
这样的QSS代码,是设置了按钮本身的内右边距,而描述文字并没有相应的缩进。从图中可以很清楚地看到效果:


我希望描述文字在虚线框的位置自动换行,而按钮的虚线框仍旧与按钮本身相同。该从哪里查描述文字所在的子控件名?
[ 此帖被米尔利安在2011-03-21 14:08重新编辑 ]
我们在天上的父,愿人都尊你的名为圣。
愿你的国降临。
愿你的旨意行在地上,如同行在天上。
离线米尔利安

只看该作者 1楼 发表于: 2011-03-21
查了一下源码,QCommandLinkButton的描述文字的绘制部分,直接返回右边界 margin 为4,是程序里写死的。如果想要调整就只能继承该类然后自己改写这个函数了。对按钮设置padding和margin均不能影响文字的绘制。
我们在天上的父,愿人都尊你的名为圣。
愿你的国降临。
愿你的旨意行在地上,如同行在天上。
离线downstairs

只看该作者 2楼 发表于: 2011-03-22
能否自己重写paintEvent ???
喜爱编程的猫头鹰
快速回复
限100 字节
 
上一个 下一个