>  Q&A  >  본문

python - 【:-D Tkinter 中 withdraw的正确使用姿势

如何实现点击button之后 显示一个新的窗口并且使button那个窗口直接消失
先贴上代码

    #coding:utf-8
    import Tkinter as tk
    from Tkinter import *
    import tkMessageBox
  
   
    root = tk.Tk()
    root.title('Test')
    e = StringVar()
  
  
    def callback():
         #tkMessageBox.showinfo('title','hello world')
          entry = Entry(root,textvariable = e)
          e.set('请输入')
          entry.pack()
 
  
    def bnt():
          Button(root,text = '确认使用',fg='red',bd = 2,width =28,
          command = callback).pack()
          root.withdraw()
    bnt()
    root.mainloop()
    

但比较蛋疼的是。。用了withdraw之后button窗口就直接匿了。。。点都点不了

伊谢尔伦伊谢尔伦2742일 전1029

모든 응답(1)나는 대답할 것이다

  • 迷茫

    迷茫2017-04-17 17:35:00

    shomy와 마찬가지로 저는 Tkinter를 거의 사용하지 않습니다. PyQt4 버전을 작성해 보았는데 문제 없이 실행됩니다.

    으아악

    PS: 특별한 요구 사항이 없다면 개발 시 PyQt4/PyQt5를 사용하는 것이 좋습니다. 이유:
    1) Qt의 강력한 클래스 라이브러리 덕분에 PyQt는 그래픽 그리기, XML 구문 분석, 네트워크 프로그래밍, 데이터베이스 읽기 및 쓰기 등. 즉, PyQt는 GUI 라이브러리일 뿐만 아니라 GUI가 아닌 부분도 포함합니다.
    2) Qt Designer의 도움으로 그래픽 인터페이스 부분을 드래그 앤 드롭할 수 있어 매우 효율적입니다.
    3) 강력한 커뮤니티 지원 예를 들어, PyQt를 기반으로 개발된 Python IDE가 현재 Tkinter보다 오픈 소스 커뮤니티에서 더 인기가 있습니다.

    회신하다
    0
  • 취소회신하다