我有一个大问题,我需要在qtablewidget中显示来自sqlite3 db的数据,但是当我存储新信息时,表格显示
column1 column2 column3 column4 ....
row1 empty empty empty empty
row2 data empty empty empty
row3 data data data empty
row4 data data data data
我的代码是显示表格中的项目 def ActualizarBase(self): #Cargamos la base de datos y la colocamos en la tabla
self.cursor.execute("SELECT * FROM Operaciones")
filas = self.cursor.fetchall()
self.numerodefilas=len(filas)
self.ui.tableWidget.setRowCount(self.numerodefilas)
#print filas[0]
for j in range(self.numerodefilas):
fila = filas[j]
for i in range(1,len(filas)):
elemento = fila[i]
print 'elemento= '+ str(elemento)
#print i
elemento = str(elemento)
if elemento == 'None' : elemento = ' '
item=None
item = QtGui.QTableWidgetItem()
item.setText(QtGui.QApplication.translate("Hucha", str(elemento), None, QtGui.QApplication.UnicodeUTF8))
self.ui.tableWidget.setItem(j,i-1,item)
欢迎任何建议
答案 0 :(得分:0)
“但是表格显示了一个单元格的数据然后跳转到另一行两个单元格,其他行三个单元格,所以......”,这是因为你没有设置self.ui.tableWidget.setColumnCount(numberOfColumns)
。
这也是错误的:for i in range(1,len(filas)):
,i
应该在range(0, numberOfColumns)
,但首先你必须知道最大列数或如果你不知道它找到它:max(len(fila))对于菲拉斯的细丝。