tkinter canvas-检查按钮列表不完整

问题描述

构建检查按钮列表(3,000个案例)时,该列表会被切断。

这是一个小样本:

import tkinter as tk

class Example(tk.Frame):
    def __init__(self,parent):

        tk.Frame.__init__(self,parent)
        self.canvas = tk.Canvas(self,borderwidth=0,background="#ffffff")
        self.frame = tk.Frame(self.canvas,background="#ffffff")
        self.vsb = tk.Scrollbar(self,orient="vertical",command=self.canvas.yview)
        self.canvas.configure(yscrollcommand=self.vsb.set)

        self.vsb.pack(side="right",fill="y")
        self.canvas.pack(side="left",fill="both",expand=True)
        self.canvas.create_window((4,4),window=self.frame,anchor="nw",tags="self.frame")

        self.frame.bind("<Configure>",self.onFrameConfigure)

        self.populate()

    def populate(self):

        for row in range(3000):

            t="Example -Checkbutton %s" %row
            button = tk.Checkbutton(self.frame,padx=7,relief=tk.RIDGE,text=t,onvalue=1,offvalue=0,font='Courier 12')
            button.grid(row=row,column=1,sticky='news')
            
    def onFrameConfigure(self,event):
        self.canvas.configure(scrollregion=self.canvas.bBox("all"))

if __name__ == "__main__":
    root=tk.Tk()
    example = Example(root)
    example.pack(side="top",expand=True)
    root.mainloop()

程序的输出

| |示例清单0


| |示例清单1123


| |示例清单1126


| |示例清单1125



| |示例清单2999

示例清单1126-2998不显示,示例清单2999用双线表示。

显示完整列表的参数吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...