Я хотел бы окрасить часть текста в QListWidgetPyQT окраски часть текста в QListWidget
Я попытался включить теги шрифта ИНТ текст, но это не работает.
Я хотел бы окрасить часть текста в QListWidgetPyQT окраски часть текста в QListWidget
Я попытался включить теги шрифта ИНТ текст, но это не работает.
Вы пытаетесь покрасить часть текста QListWidgetItem или всего текста одним QListWidgetItem?
Если вы хотите покрасить весь один элемент QListWidgetItem, используйте item.setTextColor(). Этот пример окрашивает текст второго пункта красный:
from PyQt4 import QtGui, QtCore
import sys
class Main(QtGui.QMainWindow):
def __init__(self, parent = None):
QtGui.QMainWindow.__init__(self,parent)
self.initUI()
def initUI(self):
mylist = QtGui.QListWidget(self)
mylist.setMinimumSize(QtCore.QSize(800, 800))
for i in range(5):
item = mylist.addItem('Item %s' % (i + 1))
items = mylist.findItems("Item 2",QtCore.Qt.MatchExactly)
if len(items) > 0:
for item in items:
item.setTextColor (QtGui.QColor("red"))
def main():
app = QtGui.QApplication(sys.argv)
main = Main()
main.show()
sys.exit(app.exec_())
if __name__ == "__main__":
main()
Что дает это:
Или только часть текста в QListWidgetItem использовать QLabel с addWidget() и HTML:
from PyQt4 import QtGui, QtCore
import sys
class Main(QtGui.QMainWindow):
def __init__(self, parent = None):
QtGui.QMainWindow.__init__(self,parent)
self.initUI()
def initUI(self):
mylist = QtGui.QListWidget(self)
mylist.setMinimumSize(QtCore.QSize(800, 800))
for i in range(5):
widgitItem = QtGui.QListWidgetItem()
widget = QtGui.QWidget()
widgetText = QtGui.QLabel('test<span style="color:#ff0000;">test %s</span>' % (i + 1))
widgetLayout = QtGui.QHBoxLayout()
widgetLayout.addWidget(widgetText)
widgetLayout.setSizeConstraint(QtGui.QLayout.SetFixedSize)
widget.setLayout(widgetLayout)
mylist.addItem(widgitItem)
widgitItem.setSizeHint(widget.sizeHint())
mylist.setItemWidget(widgitItem, widget)
def main():
app = QtGui.QApplication(sys.argv)
main = Main()
main.show()
sys.exit(app.exec_())
if __name__ == "__main__":
main()
Что дает этот
если я хочу изменить отклонение справа налево, как! –
Обратное направление текста? так что он читается, как в моем примере «1 tsettset»? –
Вы пробовали ответ или предложения в комментариях по http://stackoverflow.com/questions/26378900/set-text-direction-for-qlabel? –