在QTableWidgetItem中使用富文本

时间:2017-07-23 02:38:48

标签: python qt pyqt pyqt5 richtext

我可以使用widgetItem = QtWidgets.QTableWidgetItem() widget = QtWidgets.QWidget() widgetText = QtWidgets.QLabel("<b>foo bar</b>") widgetLayout = QtWidgets.QHBoxLayout() widgetLayout.addWidget(widgetText) widgetLayout.setSizeConstraint(QtWidgets.QLayout.SetFixedSize) widget.setLayout(widgetLayout) widgetItem.setSizeHint(widget.sizeHint()) self.tablewidget.setCellWidget(0, 0, widget) self.tablewidget.resizeColumnsToContents() 中的富文本吗?

目前我有这个:

module Debug
  def whoAmI?
    "#{self.type.name} (\##{self.id}): #{self.to_s}"
  end
end

class Phonograph
  include Debug
  # ...
end

ph = Phonograph.new("West End Blues")
ph.whoAmI? # => "Phonograph (#537766170): West End Blues"

但没有任何东西显示我的表格小部件。

1 个答案:

答案 0 :(得分:2)

创建QTableWidget时,必须设置行数和列数,例如:

Display

或者我们稍后可以使用self.tablewidget = QtWidgets.QTableWidget(2, 2, self) setRowCount()函数设置它:

setColumnCount()

但如果您不使用上述表格,则不会显示小部件,在您的情况下是标签。

也没有必要使用QTableWidgetItem,如下所示:

self.tablewidget = QtWidgets.QTableWidget(self)
self.tablewidget.setRowCount(10)
self.tablewidget.setColumnCount(5)

输出:

enter image description here