En este artículo, aprenderemos cómo agregar y trabajar con una tabla en nuestra aplicación PyQt5 . Una tabla es una disposición de datos en filas y columnas y se usa ampliamente en comunicación, investigación y análisis de datos. Podemos agregar una o más tablas en nuestra aplicación PyQt usando QTableWidget .
Para una mejor comprensión del concepto, tomaremos un ejemplo en el que queremos mostrar el nombre y la ciudad de diferentes personas en una tabla en nuestra aplicación. Podemos extraer los datos de una base de datos, un archivo JSON o cualquier otra plataforma de almacenamiento.
Ejemplo:
import sys from PyQt5.QtWidgets import * #Main Window class App(QWidget): def __init__(self): super().__init__() self.title = 'PyQt5 - QTableWidget' self.left = 0 self.top = 0 self.width = 300 self.height = 200 self.setWindowTitle(self.title) self.setGeometry(self.left, self.top, self.width, self.height) self.createTable() self.layout = QVBoxLayout() self.layout.addWidget(self.tableWidget) self.setLayout(self.layout) #Show window self.show() #Create table def createTable(self): self.tableWidget = QTableWidget() #Row count self.tableWidget.setRowCount(4) #Column count self.tableWidget.setColumnCount(2) self.tableWidget.setItem(0,0, QTableWidgetItem("Name")) self.tableWidget.setItem(0,1, QTableWidgetItem("City")) self.tableWidget.setItem(1,0, QTableWidgetItem("Aloysius")) self.tableWidget.setItem(1,1, QTableWidgetItem("Indore")) self.tableWidget.setItem(2,0, QTableWidgetItem("Alan")) self.tableWidget.setItem(2,1, QTableWidgetItem("Bhopal")) self.tableWidget.setItem(3,0, QTableWidgetItem("Arnavi")) self.tableWidget.setItem(3,1, QTableWidgetItem("Mandsaur")) #Table will fit the screen horizontally self.tableWidget.horizontalHeader().setStretchLastSection(True) self.tableWidget.horizontalHeader().setSectionResizeMode( QHeaderView.Stretch) if __name__ == '__main__': app = QApplication(sys.argv) ex = App() sys.exit(app.exec_())
Producción:
Publicación traducida automáticamente
Artículo escrito por AloysiusSamuel y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA