Python 显示数据库中的问题时遇到问题

Python 显示数据库中的问题时遇到问题,python,sql,database,user-interface,Python,Sql,Database,User Interface,基本上,我已经编写了一个GUI,用来制作一个数学游戏,并使用sql将其链接到我的MicrosoftAccess数据库,但是我无法将我的问题打印到我的标签上,有什么想法吗?。另外,你如何从我的问题列表中生成一个随机数,因为你可以看到我的jim陈述不起作用 import Tkinter import Databaseconnector class simpleapp_tk(Tkinter.Tk): def __init__(self,parent): Tkinter.Tk

基本上,我已经编写了一个GUI,用来制作一个数学游戏,并使用sql将其链接到我的MicrosoftAccess数据库,但是我无法将我的问题打印到我的标签上,有什么想法吗?。另外,你如何从我的问题列表中生成一个随机数,因为你可以看到我的jim陈述不起作用

import Tkinter
import Databaseconnector


class simpleapp_tk(Tkinter.Tk):
    def __init__(self,parent):
        Tkinter.Tk.__init__(self,parent)
        self.parent = parent
        self.initialize()

    def initialize(self):
        jim = randomnumber()

        SQL = 'SELECT * FROM tblQuestion'
        cursor = Databaseconnector.SELECT(SQL)
        rows = cursor.fectchall()
        for row in rows:
            print row.Question, row.Hint, row.A1, row.A2, row.A3, row.A4, row.CorrectAnswer
            alabel2.set("Question: " + (row.question)(jim).Item(1))

    def create_widgets(self):
        # create welcome label
        label1 = Tkinter.Label(self, text = "Question Game !")
        label1.grid(row = 0, column = 1, columnspan = 2, sticky = 'W')

        # create intruction label
        alabel2 = Tkinter.Label(self, text = "")
        alabel2.grid(row = 1, column = 0, columnspan = 2, sticky = 'W')

        a1loginbutton = Tkinter.Button(self, text = "Enter",)
        a1loginbutton.grid(row = 9, column = 1, sticky = 'W')

        label3 = Tkinter.Label(self, text = "")
        label3.grid(row = 10, column = 0, columnspan = 2, sticky = 'W')

        a2loginbutton = Tkinter.Button(self, text = "Enter",)
        a2loginbutton.grid(row = 11, column = 1, sticky = 'W')

        a3loginbutton = Tkinter.Button(self, text = "Enter",)
        a3loginbutton.grid(row = 9, column = 3, sticky = 'E')

        a4loginbutton = Tkinter.Button(self, text = "Enter",)
        a4loginbutton.grid(row = 11, column = 3, sticky = 'E')

        label4 = Tkinter.Label(self, text = "")
        label4.grid(row = 12, column = 0, columnspan = 2, sticky = 'W')

        hiloginbutton = Tkinter.Button(self, text = "Hint",)
        hiloginbutton.grid(row = 13, column = 3, sticky = 'E')

        label5 = Tkinter.Label(self, text = "Score:")
        label5.grid(row = 14, column = 1, columnspan = 5, sticky = 's')

        def close_page(self):
            self.destroy()

if __name__ == "__main__":
    app = simpleapp_tk(None)
    app.title('my application')
    app.geometry("150x200")
    app.mainloop()

根据OP的评论进行编辑:

  • 这一行有输入错误:
    rows=cursor.fectchall()
  • 尝试将label.set语句更改为简单的大小写,以确认此操作是否有效<代码>阿拉巴马2.set(“问题:“+行.问题)
  • 什么是randomnumber()函数,以及应该返回的
    (row.question)(jim).Item(1)
    行是什么

  • 这是我写的一些东西:DBfile='E:\COMPUTING COURSEWORK\OI OI\FinallyWorking\Working\Mathsvaders.accdb'conn=pyodbc.connect('DRIVER={Microsoft Access DRIVER(*.mdb,*.accdb)};DBQ='+DBfile)cursor=conn.cursor()#def dbconnect():def SELECT(SQL):print(SQL)return cursor.execute(SQL)我更改了游标。fetchall东西,但它不允许我将其放在标签中