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 )