【问题标题】:printing from a list TKinter从列表打印 TKinter
【发布时间】:2020-12-16 05:01:34
【问题描述】:

试图在 tkinter 的网格第 0 列的列表中打印月份。但输出是在一个单元格中重叠打印。无法找出问题所在。

#!/bin/env /python
from Tkinter import *

akhilGui = Tk()
akhilGui.geometry('600x500')
month_list = ["April 2020","May 2020","June 2020", "july 2020","August 2020", "September 2020","October 2020","November2020", "December 2020", "January 2020","February 2020", "March 2020"] #initialise the variable row_value to be used in grid()
lab_list = []
def lab_print ():
        for i in month_list:                        #iterating through the list, creating label
        #iLabel          = str(i) + "Label"
        #iEntry          = str(i) + "Entry"
            row_value = 5
            row_value = row_value + 1
            iLabel          = Label(akhilGui, text= str(i),
                                fg="#113B53",font = "Helvetica  12 bold ", justify='right')
            lab_list.append(iLabel)
            iLabel.grid(row = row_value, column=0, pady=2, padx=15, sticky= W)

lab_print ()


akhilGui.mainloop()

【问题讨论】:

    标签: python list tkinter printing


    【解决方案1】:

    你应该在for循环之前移动row_value = 5这一行:

    def lab_print ():
            row_value = 5
            for i in month_list:   #iterating through the list, creating label
                row_value = row_value + 1
                iLabel = Label(akhilGui, text= str(i),
                                    fg="#113B53",font = "Helvetica  12 bold ", justify='right')
                lab_list.append(iLabel)
                iLabel.grid(row = row_value, column=0, pady=2, padx=15, sticky= W)
    

    【讨论】:

    • 谢谢!您的回复解决了问题!!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-09
    • 2011-10-11
    • 1970-01-01
    相关资源
    最近更新 更多