无法从我的数据库显示我的问题

时间:2013-02-20 10:08:10

标签: python sql database user-interface

基本上我已经编写了一个GUI,用于制作数学游戏并使用sql将其链接到我的microsft访问数据库,但是我无法将我的问题打印到我的标签,任何想法?另外你如何从我的问题列表中生成一个随机数,因为你可以看到我的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()

1 个答案:

答案 0 :(得分:0)

根据OP的评论编辑:

  1. 此行中有一个拼写错误:rows = cursor.fectchall()
  2. 尝试将label.set语句更改为一个简单的大小写,以确认这是有效的。 alabel2.set("Question: " + row.question)
  3. 什么是randomnumber()函数,(row.question)(jim).Item(1)行应该返回什么?