2017-05-02 14 views
2

私が開発しているリビジョンアプリケーション内では、ユーザーの回答(その中から注目したいリビジョンの領域)を取り込み、特定の彼らが必要とする領域。ユーザー入力を受けてプログラムをロードする

これには入力ウィジェットが必要ですか?

これは私がこれまで持っているコードです:

instruction = tkinter.Label(roots, text= "'What would you like to revise?'\n")  
instruction.grid(row=0, column=0,sticky=W) 
if int(answer) != int(entryWidget.get().strip()): 
    tkMessageBox.showinfo("Answer", "INCORRECT!") 
else: 
    tkMessageBox.showinfo("Answer", "CORRECT!") 

私は、コードの不足をお詫び申し上げますが、私は私の別の部分をロードする方法を知らなくても、この時点を過ぎてそれを開発する方法についてはわかりませんよこの時点からコード

パート2:

def Signup(): 
    global pwordE 
    global nameE 
    global roots 

    roots = tkinter.Tk() 
    roots.title("Computer Science Revision") 
    roots.geometry("1000x1000") 
    roots.wm_iconbitmap('favicon.ico') 
    roots.configure(background="#a1dbcd")  

    photo= tkinter.PhotoImage(roots,file="ryu.gif") 
    A = tkinter.Label(roots,image=photo) 
    A.pack()  

    roots = tkinter.Tk() 
    roots.title('Signup') 
    instruction = tkinter.Label(roots, text= 'Please enter new Credentials\n') 
    instruction.grid(row=0, column=0,sticky=W) 

    nameL = tkinter.Label(roots, text='New Username: ') 
    pwordL = tkinter.Label(roots, text='New Password: ') 
    nameL.grid(row=1, column=0, sticky=W) 
    pwordL.grid(row=2, column=0, sticky=W) 
    nameE= tkinter.Entry(roots) 
    pwordE = tkinter.Entry(roots, show='*') 
    nameE.grid(row=1, column=1) 
    pwordE.grid(row=2, column=1) 

    signupButton = Button(roots, text='Signup', command=FSSignup) 
    signupButton.grid(columnspan=2, sticky=W) 
    roots.mainloop() 

    roots.title("Computer Science Revision") 
    roots.geometry("1000x1000") 
    roots.wm_iconbitmap('favicon.ico') 
    roots.configure(background="#a1dbcd")  

    photo= tkinter.PhotoImage(roots,file="ryu.gif") 
    A = tkinter.Label(roots,image=photo) 
    A.pack() 

この部分は、私はこの問題を解決することができますどのように、ログインの残りの部分とロードされませんか?

+0

ユーザが興味のある研究分野を選択するためにエントリウィジェットとelif文を使用する方法や、履歴、科学、数学などの事前定義された領域を持つボタンボタンは、関連するインターフェースをオープン/生成します。 – Sithling

+0

ユーザーはリビジョンの特定の領域のボタンを押すだけですか? – joe

+0

はい、おそらくあなたはいくつかの異なる領域をコーディングしているので、アクセスしやすいボタンですべてのオプションを表示することは良いアイデアのようです。 – Sithling

答えて

2

私はあなたがこのようなものを求めていることを願っています。

import tkinter as tk 

root = tk.Tk() 
root.geometry("500x500+100+100") 
def raise_frame(frame): 
    frame.tkraise() 

f1 = tk.Frame(root) 
f2 = tk.Frame(root) 
f3 = tk.Frame(root) 
f4 = tk.Frame(root) 

for frame in (f1,f2,f3,f4): 
    frame.grid(row=0, column=0, sticky='news') 

#Frame1 

button1 = tk.Button(f1, text='English', command=lambda:raise_frame(f2)).pack() 
button2 = tk.Button(f1, text='Maths', command=lambda:raise_frame(f3)).pack() 
button3 = tk.Button(f1, text='Science', command=lambda:raise_frame(f4)).pack() 


#Frame2 

tk.Label(f2, text="English Revision").pack() 
tk.Button(f2, text="HOME", command=lambda:raise_frame(f1)).pack() 

#Frame3 
tk.Label(f3, text="Maths Revision").pack() 
tk.Button(f3, text="HOME", command=lambda:raise_frame(f1)).pack() 

#Frame4 
tk.Label(f4, text="Science Revision").pack() 
tk.Button(f4, text="HOME", command=lambda:raise_frame(f1)).pack() 

raise_frame(f1) 
root.mainloop() 
+0

ありがとうございます - 私のボタンのどこにコードを入れるのですか?それぞれのフレームの下に? – joe

+1

はい、複数のフレームを作成することで、 'tkraise()'を使ってボタンをクリックすると特定のフレームを上げることができます。ボタンにリンクされているフレームには何かを追加する必要があります。同様に、ログイン情報も使用できます。しかし、私のコードは、オブジェクト指向のアプローチのない単なるサンプルです。 – Sundararajan

+0

あなたが手助けをする方法を知っていれば嬉しいことに、もう1つの質問...私は私の質問を編集しました – joe

関連する問題