我试图通过QTableWidgetItem在QTableWidget中显示一些棋子,但是当我这样做时,我没有得到所需的输出。这是相关的代码。
def __str__(self):
if self.colour == "White":
return '♖'
else:
return '♜'
if self.board.board[y][x]:
item.setText(str(self.board.board[y][x]))
self.chess_board.setItem(y, x, item)
第一个函数是类的函数。 if语句是将数据插入表中的位置(x,y来自for循环,item是QTableWidgetItem的实例)。 我期望的输出是♜。但是我得到的输出是□。 事实上,当我将表格中的内容复制到浏览器上时,它显示为片状,但是在桌面上它显示为上面的正方形。
感谢您的评论,但我仍有问题。在Windows 7计算机上的学校,它工作正常。在家里的Windows 10计算机上,我最后使用QtableWidget和QTableWidgetItem与PySide。 http://imgur.com/Zch4gwi
我注意到当我输出到命令行时,当字符仍然打印时,无论我使用什么计算机,都会得到UnicodeEncodeError