ich einen QTableWidget in editierbare Modus haben, in dem Benutzer in Integer-Eingang setzt, wie kann ich eine Liste der eingegebenen Daten in dieser Tabelle erzeugen, um Operationen darauf auszuführen, hier ist meine Hand-Code dafür:Wie kann ich Daten von einem QTableWidget abrufen?
def dataframe_generation_from_table(self,table):
number_of_rows = table.rowCount()
number_of_columns = table.columnCount()
tmp_df = pd.DataFrame({ 'Date' : [] , str(self.final_lvl_of_analysis) :[], 'Value': []})
for i in range(0,number_of_rows):
for j in range(0,number_of_columns):
tmp_item = table.item(i,j)
tmp_df2 = pd.DataFrame({ 'Date' : [pd.to_datetime(table.horizontalHeaderItem(j).data())] , str(self.final_lvl_of_analysis) :[ str(table.verticalHeaderItem(i).data())], 'Value': [float(tmp_item.data(0))]})
print tmp_df2
tmp_df.update(tmp_df2, join = 'left', overwrite = False)
return tmp_df
auch ich bin mit dem folgenden Code für QTableWidget Generation:
self.pd_table = QtGui.QTableWidget(self.groupBox_19)
self.pd_table.setObjectName(_fromUtf8("pd_table"))
self.pd_table.setColumnCount(0)
self.pd_table.setRowCount(0)
Meine Spezifikationen sind: Pandas 0.18.1, PyQt 4 und Python 2,7
Edit: Ich bin ein Neuling für PyQt, bitte helfen.
Daten abrufen immer aus dem Modell der Ansicht, die Sie interessieren – Trilarion
@Trilarion denken Sie bitte, dass ich QTableView nicht verwende, stattdessen verwende ich QTableWidget, also bitte, wenn Sie einen Weg kennen, um Daten von einem QTableWidget zu bekommen, antworten Sie mit einer passenden Antwort. –
QTableWidget erbt von QTableView, das von QAbstractItemView erbt, das ein QAbstractItemModel enthält, und dort haben Sie das Modell. Ich empfehle, mit dem Modell zu interagieren oder eigene über QAbstractItemView.setModel bereitzustellen. – Trilarion