【问题标题】:Python 2.7/Windows resizable ttk progressbar?Python 2.7/Windows 可调整大小的 ttk 进度条?
【发布时间】:2011-04-30 22:32:00
【问题描述】:

我正在试验 Python 2.7 的新 Tkinter Tile 支持 (ttk)。有没有办法让 ttk.Progressbar() 控件根据其父容器的比例自动调整大小?在阅读有关此控件的文档时,似乎必须明确设置此小部件的高度或宽度?

我正在寻找一种将 ttk.Progressbar 小部件放置在水平可调整大小的 Tkinter 对话框中的方法,并让该小部件随着用户调整父对话框的大小而调整大小。

是否有我可以捕获的窗口或框架调整大小事件、我可以使用 .config() 的 ttk.Progressbar 设置或我可以用来实现目标的 .pack() 选项?

任何建议表示赞赏。

【问题讨论】:

    标签: python user-interface progress-bar tkinter ttk


    【解决方案1】:

    尝试使用pack(或网格)的fill 选项让小部件填充其容器。

    import Tkinter as tk
    import ttk
    
    root=tk.Tk()
    pb = ttk.Progressbar(mode="indeterminate")
    pb.pack(side="bottom", fill="x")
    pb.start()
    root.wm_geometry("300x300")
    root.mainloop()
    

    【讨论】:

    • 布莱恩:非常感谢您的帮助(再次!)。从您的示例中可以看出,我为进度条使用了不正确的布局技术。顺便说一句:您选择使用 .wm_geometry() 与 .geometry() 的具体原因有哪些?
    • @Malcolm:没有理由。我使用 Tk 的大部分经验都是使用 Tcl/Tk,因此出于习惯,我倾向于使用模仿 Tcl 实现的结构。在 Tcl/Tk 中,命令是“wm geometry”。
    • @BryanOakley 我注意到你似乎非常适应 python 和内置的 GUI 工具(Tk ttk)我目前正在使用它们进行项目,我很困惑,请你看看我的问题stackoverflow.com/questions/13157214/…我将不胜感激,谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-14
    • 1970-01-01
    • 2012-05-31
    • 1970-01-01
    • 2014-10-01
    • 1970-01-01
    相关资源
    最近更新 更多