0
我对python真的很陌生,只是为了让我的头绕它而行,这里是我迄今为止的内容。我已经创建了一个父窗口“root = Tk()”,我试图切换到一个新的(打开一个新窗口“Class window2”)在tkinter中打开和关闭窗口遇到问题
所以我希望你能理解我的废话。如果你选择帮助谢谢(Y)
#!/usr/bin/env python
import sqlite3
import Tkinter as tk
from Tkinter import *
conn = sqlite3.connect('Logindetails.db')
c = conn.cursor()
column_name = "Username"
attempts = 3
class welcomewindow():
def __init__(self,master):
self.master = master
self.frame = tk.Frame(master)
self.lbl = Label(master, text="Please Login")
self.lbl.pack()
self.lbl1 = Label(master, text="Username")
self.lbl1.pack()
userName=StringVar(None)
self.userBox = Entry(master, textvariable=userName)
self.userBox.pack()
self.lbl2 = Label(master, text="Password")
self.lbl2.pack()
passWord=StringVar(None)
self.passBox = Entry(master, show="*", textvariable=passWord)
self.passBox.pack()
self.logoutbut = Button(master, text="Login", width=20, command=self.Loginprocess)
self.logoutbut.pack(side='bottom', padx=15, pady=15)
self.exitbut = Button(master, text="Exit", width=20, command=self.exitProgram)
self.exitbut.pack(side='bottom', padx=15, pady=15)
def exitProgram(self):
self.master.destroy()
def Loginprocess(self):
global attempts
while attempts < 4 and attempts >= 0:
print "attempts left = " + str(attempts)
self.name = self.userBox.get()
self.password = self.passBox.get()
if self.password == "" or self.name == "":
attempts -= 1
else:
self.Checkrecord()
def Checkrecord(self):
global attempts
conn = sqlite3.connect('Logindetails.db')
cursor = conn.cursor()
query = "SELECT * FROM Logindetails WHERE Username=? ORDER BY {0}".format(column_name)
cursor.execute(query, (self.name,))
for row in cursor:
if self.name in row and self.password in row:
self.app = Window2(root)
welcomewindow.destroy()
else:
attempts -= 1
return
class Window2():
def __init__(self, master):
self.master = master
self.frame = tk.Frame(master)
# self.title("Cinema Booking System")
# self.geometry("250x250")
root = Tk()
root.title("Cinema Booking System")
root.geometry("250x250")
cls = welcomewindow(root)
root.mainloop()
谢谢你,有点排序我的问题,除了从上一课的所有文本框和标签仍然存在,我将如何删除这些?非常感谢你的回复。 – 2014-11-22 21:16:43
没关系分类!非常感谢你让我走上正轨。 – 2014-11-22 22:13:04
实际上,框架的默认宽度和高度为1,而不是零。 – 2014-11-22 22:22:00