Tkinter-为每个LabelFrame添加滚动条

Tkinter-为每个LabelFrame添加滚动条,第1张

Tkinter-为每个LabelFrame添加滚动条

您创建了3个canvas,但是所有画布都设置在self.canvas中。

因此self.canvas对应于最后一个。您对其进行了3次配置,但从未两次配置。

查看我的解决方案(我删除了所有对象的东西):

from Tkinter import *def createBox(window):    list_ = ['CARGA', 'MAQUINA', 'SOLTAR']    for i in xrange(3):        mybox = Labelframe(window, padx=5, pady=4)        mybox.grid(row=i, column=0)        createWindow(mybox, list_[i], i)def createWindow(box, lt_actual, i):    canvas = Canvas(box, borderwidth=0)    frame = frame(canvas)    vsb = Scrollbar(box, orient="vertical", command=canvas.yview)    canvas.configure(yscrollcommand=vsb.set, width=1200, heigh=80)    vsb.pack(side="right", fill="y")    canvas.pack(side="left", fill="both", expand=True)    canvas.create_window((4,4), window=frame, anchor="nw", tags="frame")    # be sure that we call onframeConfigure on the right canvas    frame.bind("<Configure>", lambda event, canvas=canvas: onframeConfigure(canvas))    fillWindow(lt_actual, frame)def fillWindow(lt_ver, frame):    piezas = ['time: 39.41597 BT: 3025.5923', 'time: 21.637377 BT: 3025.5923', 'time: 52.185192 BT: 3025.5923', 'time: 57.804752 BT: 3025.5923', 'time: 47.700306 BT: 3025.5923', 'time: 21.1827 BT: 3025.5923', 'time: 35.244156 BT: 3025.5923', 'time: 47.26321 BT: 3025.5923']    fechaentrada = ['26-02-2014', '26-02-2014', '26-02-2014', '26-02-2014', '26-02-2014', '26-02-2014', '26-02-2014', '21-02-2014']    fechasalida = ['26-02-2014', '26-02-2014', '26-02-2014', '26-02-2014', '26-02-2014', '26-02-2014', '26-02-2014', '21-02-2014']    horacomienzo = ['12:00', '12:39', '01:00', '01:52', '02:49', '03:36', '03:57', '12:00']    horafinal = ['12:39', '01:00', '01:52', '02:49', '03:36', '03:57', '04:32', '12:47']    ide = [0, 1, 2, 3, 4, 5, 6, 7]    idpieza_w1 = Label(frame, text = "Id", width=20, font="bold")    idpieza_w1.grid(row=0, column=0)    pieza_w1 = Label(frame, text = "Pieza", width=20, font="bold")    pieza_w1.grid(row=0, column=1)    fechainiciopromo_w1 = Label(frame, text = "Dia inicio " + str(lt_ver), width=20, font="bold")    fechainiciopromo_w1.grid(row=0, column=2)    horainiciopromo_w1 = Label(frame, text = "Hora inicio "  + str(lt_ver), width=20, font="bold")    horainiciopromo_w1.grid(row=0, column=3)    fechafinalpromo_w1 = Label(frame, text = "Dia fin carga "  + str(lt_ver), width=20, font="bold")    fechafinalpromo_w1.grid(row=0, column=4)    horafinalpromo_w1 = Label(frame, text = "Hora final carga "  + str(lt_ver), width=20, font="bold")    horafinalpromo_w1.grid(row=0, column=5)    for i in xrange(len(piezas)):        idtextos_w1 = Label(frame, text=str(ide[i]))        idtextos_w1.grid(row=i+1, column=0)        textos_w1 = Label(frame, text=str(piezas[i]))        textos_w1.grid(row=i+1, column=1)        fechainiciogrid_w1 = Label(frame, text=str(fechaentrada[i]))        fechainiciogrid_w1.grid(row=i+1, column=2)        horainiciogrid_w1 = Label(frame, text=str(horacomienzo[i]))        horainiciogrid_w1.grid(row=i+1, column=3)        fechafinalgrid_w1 = Label(frame, text=str(fechasalida[i]))        fechafinalgrid_w1.grid(row=i+1, column=4)        horafinalgrid_w1 = Label(frame, text=str(horafinal[i]))        horafinalgrid_w1.grid(row=i+1, column=5)def onframeConfigure(canvas):    canvas.configure(scrollregion=canvas.bbox("all"))tk = Tk()createBox(tk)tk.mainloop()


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5673786.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存