-1
我有一個表,我需要添加到網格在我的主窗口。我使用python,sqlite3的和PyQt的。如何在SQL表添加到PyQt的主窗口
我的問題是,我得到一個類型的錯誤
QGridLayout.addWidget(QWidget的,INT,INT,INT,INT,Qt.Alignment對準= 0):參數1具有意想不到類型 '與QSqlTableModel'
我認爲這意味着addWidget是不正確的,我不知道它應該是什麼?任何想法,將不勝感激。
代碼如下:
def CreateStockDBWindow(self):
# Create Table
self.mainLayout = QtGui.QGridLayout()
app = QtGui.QApplication(sys.argv)
self.createConnection()
model = QtSql.QSqlTableModel()
self.initializeModel(model)
# Create Widgets
self.AddButton = QtGui.QPushButton("Add Stock",self)
self.RemoveButton = QtGui.QPushButton("Remove Stock",self)
self.MoreButton = QtGui.QPushButton("More Details",self)
# Create Layouts
self.VLayout = QtGui.QVBoxLayout()
# top bar
# Create Widgets for Top Bar
CompanyNameLabel = QtGui.QLabel("<font size='72'><b>"+"Phoenix Trading"+"</b></font>",self)
searchLabel = QtGui.QLabel("Search:",self)
searchLineEdit = QtGui.QLineEdit("",self)
searchButton = QtGui.QCommandLinkButton("Search",self)
# Create Graphics view
logo = QtGui.QPixmap("logo.jpg")
self.myScene = QtGui.QGraphicsScene()
self.myScene.addPixmap(logo)
self.graphicsView = QtGui.QGraphicsView(self.myScene)
# layouts for top bar
self.TopBarLayout = QtGui.QGridLayout()
self.RHSTopBarLayout = QtGui.QGridLayout()
self.RHSVLayout = QtGui.QGridLayout()
self.TopBarLayout.addWidget(self.graphicsView,0,0)
self.TopBarLayout.addWidget(CompanyNameLabel,0,1)
self.RHSVLayout.addWidget(searchLabel,0,0)
self.RHSVLayout.addWidget(searchLineEdit,0,1)
self.RHSTopBarLayout.addWidget(searchButton,1,0)
self.RHSTopBarLayout.addLayout(self.RHSVLayout,0,0)
self.TopBarLayout.addLayout(self.RHSTopBarLayout,0,2)
# Assemble
self.VLayout.addWidget(self.AddButton)
self.VLayout.addWidget(self.RemoveButton)
self.VLayout.addWidget(self.MoreButton)
self.mainLayout.addLayout(self.TopBarLayout,0,0,1,5)
self.mainLayout.addLayout(self.VLayout,4,1)
self.mainLayout.addWidget(model,4,5)
app.exec
return self.mainLayout
我現在已經做到了,但它仍然無法正常工作,它只是將不會加載,並且沒有給出任何錯誤。我知道它已經運行了整個代碼作爲其在打印報表涵蓋了。有任何想法嗎? –