Code: Alles auswählen
# Daten aus Abfrage
self.query_model = QSqlQueryModel()
#headers = ["1", "2", "3", "4", "5", "6", "7", "8", "9" ]
#tab_model = MyTableModel(self.query_model, headers)
tab_model = MyTableModel(self.query_model)
view = QTableView()
view.setModel(tab_model)
# Mit der Darstellung im QTableView funktioniert es
# view.setModel(self.query_model) ### TEST
Code: Alles auswählen
class MyTableModel(QAbstractTableModel):
#def __init__(self, model, headers):
def __init__(self, model):
super().__init__(model)
self._model_sql = model
#self._headers = headers
def rowCount(self, index=None):
return self._model_sql.rowCount()
def columnCount(self, index=None):
return self._model_sql.columnCount()
def headerData(self, section, orientation, role):
if role == Qt.ItemDataRole.DisplayRole and orientation == Qt.ItemDataRole.Horizontal:
if section == 0:
return "KDNr."
def data(self, index, role=Qt.ItemDataRole.DisplayRole):
if not index.isValid():
return None
elif role == Qt.ItemDataRole.DisplayRole:
column = index.column()
if column == 0:
return self._model_sql.record(index.row()).value(column)
elif column == 1:
value = self._model_sql.record(index.row()).value(column)
return f"RIP {value}"
else:
return None
return None