qt4中不同样式的文本呈现

qt4中不同样式的文本呈现,qt4,Qt4,说我有文字,可能会有不同的效果。我的意思是说,文本的上半部分应该有正常的渲染,下半部分应该有模糊效果。这是否可以在qt4-c++编程中实现。如果是。。。。怎样。代码片段将非常有用。我不认为QT中有一个现成的小部件,我想你应该考虑创建一个自定义小部件并在那里做渲染。p> QT自定义绘制示例可在此处找到: 高斯模糊算法描述可在以下位置找到: 希望这能有所帮助,这取决于你真正想做什么。如果QWidget的类型无关紧要,您可以简单地将文本拆分为两个QLabel,并将它们的字体、大小设置为您想要的任何内容

说我有文字,可能会有不同的效果。我的意思是说,文本的上半部分应该有正常的渲染,下半部分应该有模糊效果。这是否可以在qt4-c++编程中实现。如果是。。。。怎样。代码片段将非常有用。

我不认为QT中有一个现成的小部件,我想你应该考虑创建一个自定义小部件并在那里做渲染。p> QT自定义绘制示例可在此处找到:

高斯模糊算法描述可在以下位置找到:


希望这能有所帮助,这取决于你真正想做什么。如果QWidget的类型无关紧要,您可以简单地将文本拆分为两个QLabel,并将它们的字体、大小设置为您想要的任何内容(在您的示例中为正常渲染和模糊效果)

然后,您可以使用布局将QLabel添加到QWidget(通过这种方式将它们分组在一起):

这将创建一个小部件,其中两个标签堆叠在彼此的顶部


既然您说文本分为两半(上半部分和下半部分),这可能是一个有用的解决方案。

当然,我是用Java实现的(但在C++中也可以用同样的方式)。
QLabel label1 = new QLabel();
QLabel label2 = new QLabel();
label1.setStyleSheet(... set your stylesheets here for label1);
label2.setStyleSheet(... set your stylesheets here for label2);
QVBoxLayout layout = new QVBoxLayout();
layout.addWidget(label1);
layout.addWidget(label2);
QWidget widget = new QWidget();
widget.setLayout(layout);