QPushButton是否可以具有两个不同的字体大小? 例如,对于QPushButton中的文本“ LIVE VIDEO”,我希望“ LIVE”的字体大小为16,对于“ VIDEO”的字体大小为12。
答案 0 :(得分:2)
从QPushButton派生并自己绘制文本。您可以参考这篇文章以供参考。 Two colours text in QPushButton
答案 1 :(得分:1)
虽然@abhilb提出的建议是可行的,但我会选择一个可点击的自定义QLabel
,它的实现速度更快。
不同于QPushButton
QLabel
支持RTF格式。如果将文本格式设置为Qt::RichText
,则可以将HTML放在其中,这意味着可以使用<font/>
,<b/>
等。
myLabel.setTextFormat(Qt::RichText);
myLabel.setText("<font size='16'>LIVE</font><font size='12'/>VIDEO</font>");
我已将此格式添加到我的小部件中的标签中,您可以看到结果:
您只需要处理void mouseReleaseEvent(QMouseEvent* event);
或void mousePressEvent(QMouseEvent* event);
即可使其正确单击。最后一点是发出您自己的clicked()
信号。