zoukankan      html  css  js  c++  java
  • 【python tkinter】对于窗口存在的认识

    今天写了messagebox(信息提示框) 和 inputbox(输入框)。 对于  【窗口】 有了新的认识。。。

    发现一个奇怪的事情(虽然原因很简单啦······)

    def msg_box(title="消息框标题", text="提示内容"):
        try:
            root = Tk()
            root.withdraw()
            root.wm_attributes('-topmost', 1)
            messagebox.showinfo(title, text)
        except Exception as e:
            raise e
    def input_box(title="Info"):
        window = Tk()  # 主窗口
        window["bg"] = "white"
        window.wm_attributes('-topmost', 1)  # 窗口置顶
        window.title(title)  # 窗口标题
    
        linedit = tk.Entry(borderwidth=2, width=40)
        linedit.grid(row=0, padx=5, pady=20, columnspan=10)
    
        b = tk.Button(window_1, text='退出', command=window.quit, width=5, relief="groove", bg="white")
        b.grid(row=1, column=5, columnspan=3, pady=15)
    
        window.mainloop()  # 循环消息,让窗口活跃

    很明显,单独运行上面2段程序,是可以顺利执行的。

    但 2个程序 先后运行呢???

    结果很有趣。。。 一开始吓到我了。


    有人可能会说 这肯定是第一个msgbox的影响,msgbox窗口没有关闭!


    我也知道啊~~~

    但 这意味着什么?

    msgbox()  root = TK()  产生了一个root窗口

    inputbox()  window = Tk()  产生了一个 window窗口

    结果是 root窗口 影响了 window窗口 ,或是 root窗口 和 window窗口根本是同一个窗口?????? (请GUI大神指教~)


    我觉得root窗口和window窗口是同一个。 (作为程序员,"觉得"这个词不应该出现······)

    也就是msgbox里的root窗口,在inputbox窗口里 再次出现。但我不理解为什么 输入框ENTRY 消失了? 而Button却可以正常显示???(如果有人知道,请指教~)

    欢迎交流,感谢任何提出建议的人······

  • 相关阅读:
    js常用方法收集
    Jquery的常用使用方法
    jQuery css()选择器使用说明
    解决IE6,边框问题
    HTML问题集锦及笔记
    我的第一个chrome扩展(3)——继续读样例
    我的第一个chrome扩展(0)——目标
    我的第一个chrome扩展(2)——基本知识
    我的第一个chrome扩展(1)——读样例,实现时钟
    2の奇妙用法
  • 原文地址:https://www.cnblogs.com/Restaurant/p/11693868.html
Copyright © 2011-2022 走看看