PyQt4 module を使用してユーザー インターフェイスを作成しています。私が直面している問題は、「self.ftp_tableWidget」変数にアクセスできないことです
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName(_fromUtf8("MainWindow"))
MainWindow.resize(790, 610)
self.FTP = QtGui.QWidget()
self.FTP.setObjectName(_fromUtf8("FTP"))
self.ftp_tableWidget = QtGui.QTableWidget(self.FTP)
self.ftp_tableWidget.setGeometry(QtCore.QRect(40, 90, 411, 192))
self.ftp_tableWidget.setMinimumSize(QtCore.QSize(331, 0))
self.ftp_tableWidget.setObjectName(_fromUtf8("ftp_tableWidget"))
self.ftp_tableWidget.setColumnCount(2)
self.ftp_tableWidget.setRowCount(31)
item = QtGui.QTableWidgetItem()
self.ftp_tableWidget.setHorizontalHeaderItem(0, item)
item = QtGui.QTableWidgetItem()
self.ftp_tableWidget.setHorizontalHeaderItem(1, item)
self.update_table()
ここで ftp_tableWidget が初期化されます。
def update_table(self):
cursor.execute('''SELECT MAX(SNO) FROM ftp_auth_table1''')
entry=cursor.fetchall()
entry=entry[0]
count=entry[0]
self.ftp_tableWidget.setRowCount(count)
cursor.execute('''SELECT * FROM ftp_auth_table1''')
entry=cursor.fetchall()
これは、テーブル ウィジェットを更新するコードです。
def adding(self):
self.msg=add_to()
self.msg.show()
このコードは、データベースにデータを追加するクラスを呼び出しています。
class add_to(QtGui.QDialog,Ui_MainWindow):
def __init__(self):
super(add_to,self).__init__()
Ui_MainWindow.__init__(self)
このコードは、データをデータベースに追加するクラスを初期化し、update_table 関数を呼び出してテーブル ウィジェットを更新します。
これは私が得ているエラーです
self.ftp_tableWidget.setRowCount(count)
AttributeError: 'add_to' object has no attribute 'ftp_tableWidget'
仕様:Python 2.7とPyQt4モジュールを使用しています。
「notbad jpeg」で与えられた回答に従ってコードを編集した後: class Ui_MainWindow(object): def init (self,mainwindow): self.setupUi(mainwindow) def setupUi(self, MainWindow):
これは私に問題を与えています:
class add_to(QtGui.QDialog,Ui_MainWindow):
def __init__(self):
super(add_to,self).__init__()
self.window=QtGui.QMainWindow()
self.MainWindow=Ui_MainWindow(self.window)
Ui_MainWindow.__init__(self,self.MainWindow)
これはエラーになります:
MainWindow.setObjectName(_fromUtf8("MainWindow"))
AttributeError: 'Ui_MainWindow' object has no attribute 'setObjectName'
Pls は誰でも私を助けることができます。
事前にサンクス