[pyar] Borrar las filas de un TableWidgets
Roberto Matarrita
rmatarria en gmail.com
Dom Sep 10 03:53:43 ART 2017
Buenas noches.
Hace días hice un mantenimiento de una tabla, donde se insertan , modifica
y borran datos.
La idea es que cada vez que se aplica alguno de los conceptos anteriores el
TableWidgets, se actualice, mostrando los cambios que se le hace a un
registro, ya sea que se modifique, incluya o excluya el registro.
Tengo una forma que hace todo esto y abajo en la misma forma hay un
tablewidgets, que muestra los datos de la tabla. Cuando hago un insert, o
bien borro o modifico los datos ese table debe actualizarse. El problema
que tengo es que al borrar las filas del table widgets, no se me borran
todas y cuando se me refresca el tablewidget, se muestras los datos nuevos
mas las filas que no se borraron.
He hecho muchos cambios pero siempre es lo mismo y desconozco el porque no
se borran todos los datos. Aquí pongo parte del código.
Roberto
Costa Rica.l
def Consultar2(self):
cadenaconexcion= "host='localhost' dbname='municipal' user='postgres'
password='Administra8080'"
obj = psycopg2.connect(cadenaconexcion)
objCursor=obj.cursor()
estado = self.db.open()
if estado == False:
QMessageBox.warning(self, "Error", self.db.lastError().text(),
QMessageBox.Discard)
#Definicion de las columnas
self.tableWidget.setColumnCount(4)
self.tableWidget.setHorizontalHeaderLabels(['Id', 'Nombre ', 'Edad',
'Salario'])
self.tableWidget.setColumnWidth(0,30)
self.tableWidget.setColumnWidth(1,200)
self.tableWidget.setColumnWidth(2,40)
row=0
objCursor=obj.cursor()
objCursor.execute("SELECT identificacion,nombre,edad,salario FROM
usuarios order by identificacion asc")
w = 0
j=self.tableWidget.rowCount()
#Proceso para borrar las filas
while w < j:
self.tableWidget.removeRow(w)
w = w + 1
#Proceso para cargas el tablewidgets
for i in objCursor:
self.tableWidget.insertRow(row)
self.identificacion = str(i[0])
self.nombre = str(i[1])
self.edad = str(i[2])
self.salario = str(i[3])
self.tableWidget.setItem(row, 0,
QTableWidgetItem(self.identificacion))
self.tableWidget.setItem(row, 1, QTableWidgetItem(self.nombre))
self.tableWidget.setItem(row, 2, QTableWidgetItem(self.edad))
self.tableWidget.setItem(row, 3, QTableWidgetItem(self.salario))
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20170910/844937b7/attachment.html>
Más información sobre la lista de distribución pyar