所以我创建了一个QTableWidget,里面装满了QComboBoxes和QLineEdits。我的QComboBox工作得非常好,但无论出于何种原因,我的QLineEdits都没有正确显示文本。
self.table = QtGui.QTableWidget()
tableItem = QtGui.QLineEdit( )
tableItem.setText( "Testing" )
self.table.setCellWidget(row, 1, tableItem )
现在我尝试测试它以查看值是否存在于表中...并且确定如果我使用tableItem.text()我得到“测试”回来。我只是不确定为什么在运行UI时lineEdit没有显示任何内容。
谢谢!
答案 0 :(得分:1)
这是一个简单的例子,QLineEdit正常工作。
from PyQt4 import QtCore, QtGui
import sys
app = QtGui.QApplication([])
table = QtGui.QTableWidget(2,2)
tableItem = QtGui.QLineEdit()
tableItem.setText( "Testing" )
table.setCellWidget(0, 0, tableItem )
comboBox = QtGui.QComboBox()
table.setCellWidget(1,1, comboBox)
table.show()
sys.exit(app.exec_())
基本上,我改变的只是给桌子一个尺寸。您可以像我一样创建它,或者使用table.setRowCount()
。
当然,对于有r行的表,请确保不要在行r处插入任何。它从0到r-1。