나는 파이썬으로 tkinter gui를 만들고 있지만 적절하지 않다. 활성화를 클릭하면 사용자에게 패스워드를 묻는 새 상자를 열어야하지만 약간의 오류가있다.
여기 아래의 문제를 정의 내가 사용하고 코드입니다 :대화 상자 파이썬과의 Tkinter에서의 배치
import Tkinter
import tkMessageBox
from ttk import *
from Tkinter import *
root = Tk()
top = Tk()
def helloCallBack():
top.title("Activation")
Label(top, text="Username").grid(row=0, sticky=W, padx=4)
Entry(top).grid(row=0, column=1, sticky=E, pady=4)
Label(top, text="Pass").grid(row=1, sticky=W, padx=4)
Entry(top).grid(row=1, column=1, sticky=E, pady=4)
Button(top, text="Submit").grid(row=2, column=1)
B = Tkinter.Button(text ="Activate", command = helloCallBack)
B.pack()
root.mainloop()
top.mainloop()
그래서 내가 갖는 출력이됩니다;
그리고 난 활성화를 클릭하면 : 여기
1. 기기
두 문제는 내가 프로그램을 실행 루트 상자 뒤에 빈 상자, 어떻게 내가 그 제거합니까입니까?
2. 활성화를 클릭하면 첫 번째 메시지 상자 (루트)가 삭제되지 않습니다.
@Lafexlos, 내가 당신과 동의 해요, 감사합니다 추가! 이것은 사실이며,이 변수를 저장하는 메소드와 속성을 가진 * 클래스와 비슷한 * 구조 (자신의 '클래스 App (tk.Tk)'를 빌드하는 것과 같은 smth)와 같은 OP에 대한 더 많은 권장 사항이 있습니다. 그러나 나는 OP가 python/tkinter에 새로운 것으로 생각하고이 정보는 그를 위해 복잡 할 것이라고 생각합니다. (또는 너무 직선이므로 여기에 연구를 할 여지가 없습니다. 단지 복사/과거입니다.) 방금 OP의 코드를 잡고 원하는대로 만들었습니다. – CommonSense
고맙습니다;) 그렇습니다. 저는 Tkinter로 Python을 처음 사용했기 때문에 학습 과정에서 그렇습니다. –