2017-04-10 3 views
1

私はGUIを作成するためにtkinterを使用しています。私はちょうどあなたの質問で行きますので、あなたのコードは、いくつかのインデントの誤差が含まれている私は二番目は(sign_in機能)を開くと正しく近い最初のGUIボックスを作成する方法がわからないよこれまでに作ったこのコードを編集すると、 'signup'ボタンをクリックするとguiが閉じて次のものが開きます

from tkinter import * 
class login: 
    def __init__(self, master): 
     frame = Frame(master) 
     frame.grid() 
     self.button1 = Button(frame, text="signup", fg="green",command=self.sign_in) 
     self.button2 = Button(frame, text="sign in", fg="black",) 
     self.button3 = Button(frame, text="quit", fg="red", command=frame.master.destroy) 
     self.button1.grid(stick=W) 
     self.button2.grid(stick=W) 
     self.button3.grid(stick=W) 


    def sign_in(self): 

     frame = Frame() 
     frame.grid() 
     name = Label(root, text="Name: ") 
     password = Label(root, text="password: ") 
     entry1 = Entry(root) 
     entry2 = Entry(root) 
     name.grid(row=0, sticky=E) 
     password.grid(row=1, sticky=E) 
     entry1.grid(row=0, column=1) 
     entry2.grid(row=1, column=1) 

     c = Checkbutton(root, text="keep me logged in") 
     c.grid(columnspan=2, sticky="w") 



root = Tk() 
account=login(root) 
root.mainloop() 
+0

をあなたには、いくつかのひどいインデントの問題は、すべてが今固定すべきことであるが、最初の – abccd

答えて

1

をこのすべてを行いました。

私はボタン「サインアップ」をクリックし、それはそのGUIを閉じて、あなたが最初にこのようなあなたのルートウィンドウを引き抜くことにより行うことができ、次のいずれか

を開きます。あなたの元のウィンドウを非表示になりますroot.withdraw()。次に、次のようなToplevelウィンドウを作成します。newWindow = tk.Toplevel(root)新しいウィンドウを作成します。これらの行をボタンコマンド呼び出しに配置するだけです。

は、ここでは、私がrootframeにすべてのマスターを変更しないことをsign_inノートに変更することができますものです:

def sign_in(self): 
    root.withdraw() 
    frame = Toplevel(root) 
    name = Label(frame, text="Name: ") 
    password = Label(frame, text="password: ") 
    entry1 = Entry(frame) 
    entry2 = Entry(frame) 
    name.grid(row=0, sticky=E) 
    password.grid(row=1, sticky=E) 
    entry1.grid(row=0, column=1) 
    entry2.grid(row=1, column=1) 

    c = Checkbutton(frame, text="keep me logged in") 
    c.grid(columnspan=2, sticky="w") 
+0

インデントの問題を修正してくださいすることができ、 –

+0

そこに、私の編集を確認してください – abccd

+0

おかげでバンチの男 –

関連する問題