首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

怎么让QListWidget每个item中个别字用不同颜色显示

2012-08-01 
如何让QListWidget每个item中个别字用不同颜色显示?QListWidget可以对每项设置前景和背景色。我现在希望对

如何让QListWidget每个item中个别字用不同颜色显示?
QListWidget可以对每项设置前景和背景色。我现在希望对每项内部不同字符用不同颜色显示,比如
红色 蓝色
也就是一行可以用多种颜色显示。

如果不能直接达到效果,不知能不能把QLabel作为Item加入QListWidget中,因为QLabel支持richText显示。
或者不用QListWidget,其它方案也可以。
谢谢!

[解决办法]
void QListWidget::setItemWidget ( QListWidgetItem * item, QWidget * widget )
Sets the widget to be displayed in the give item.

This function should only be used to display static content in the place of a list widget item. If you want to display custom dynamic content or implement a custom editor widget, use QListView and subclass QItemDelegate instead.

This function was introduced in Qt 4.1.

ps: 可以试试这个函数

See also itemWidget() and Delegate Classes.
[解决办法]
之前只搞过整体的前景背景色设置,每一项没有试过,等待高手吧。。。
[解决办法]
用样式表应该可以解决这个问题,setStyleSheet()。
[解决办法]
1楼说的可行,也可以使用button啊,将item的事件与button事件关联
至于一行多种颜色,用样式或者直接重写paintEvent就好
[解决办法]
把QLabel设置成QListWidget项可以用
void QListWidget::setItemWidget ( QListWidgetItem * item, QWidget * widget )

热点排行