我想增加在PySide / Qt表格单元格内显示的SVG图标的大小
icon = QtGui.QIcon('icon.svg')
entry = QtGui.QTableWidgetItem()
entry.setIcon(icon)
entry.setTextAlignment(QtCore.Qt.AlignHCenter | QtCore.Qt.AlignVCenter)
table.setItem(row_index, column_index, entry)
我尝试的任何东西都不会增加显示的SVG的大小。它目前显示为一个非常小的图标,似乎也忽略了对齐。 QIcon文档说项目可以缩放,所以必须有办法。
我做错了什么?
答案 0 :(得分:1)
您应该添加table.setIconSize(QSize(w, h)
(如果您使用QTableWidget
)和entry.setSizeHint(QSize(w, h)
,文档here,就像这样:
table.setIconSize(QSize(50, 50))
icon = QtGui.QIcon('icon.svg')
entry = QtGui.QTableWidgetItem()
entry.setSizeHint(QSize(50, 50))
entry.setIcon(icon)
entry.setTextAlignment(QtCore.Qt.AlignHCenter | QtCore.Qt.AlignVCenter)
table.setItem(row_index, column_index, entry)
我不敢改变对齐方式(也许可以自定义QTableWidget
类)。如果必须进行对齐,则可以使用QTableWidget.setCellWidget()
,请参阅this answer。