【问题标题】:Entry boxes automatic自动输入框
【发布时间】:2020-12-17 11:30:52
【问题描述】:

条目框在标签下方创建。我试图针对每个标签创建它

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


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 2021","February 2021", "March 2021"] #initialise the variable row_value to be used in grid()
lab_list = []
entry_list =[]
def lab_print ():
        monthyear = time.strftime("%m%Y")
        k= int(monthyear[:2])
        if k < 4:
                k=k+12
        else:
                k= k
        month_lab = month_list[:k-4]        

        row_value = 5
        for i in month_lab: #iterating through the list, creating label
        #iLabel          = str(i) + "Label"
        #iEntry          = str(i) + "Entry"
            
            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)
            row_value = row_value+1

         v               = StringVar(akhilGui, value='0')

        for i in range (8):
            iEntry          = Entry(akhilGui, bd =1, fg= "#093145",
                                textvariable = v,justify='right')
            iEntry.grid(row= row_value, column=1, pady=2,sticky= W)
            row_value       = row_value + 1
lab_print ()

akhilGui.mainloop()

请指出我错的地方!正在等待帮助!我正在尝试实现除当前月份之外的财政年度的一列月份,并针对每个月份设置一个输入框以在每个框中张贴金额。

【问题讨论】:

    标签: python tkinter printing


    【解决方案1】:

    这里试试这个:

    from tkinter import *
    import time
    from datetime import datetime
    
    def lab_print ():
            current_year = time.strftime("%Y")
            current_month = datetime.now().strftime('%B')
            current_month_year = ' '.join([current_month,current_year])
            
            for x in range(len(month_list)):
    
                if  month_list[x] != current_month_year:
                    Label(root, text=month_list[x]).grid(row=x, column=0)
                    Entry(root).grid(row=x, column=1)
                    Grid.rowconfigure(root,  x, weight=1)
                
                else:
                    break  
    
    root = Tk()
    root.geometry('600x500')
    
    Grid.columnconfigure(root, (0,1), weight=1)
    
    month_list = ["April 2020","May 2020","June 2020", "July 2020","August 2020", "September 2020","October 2020","November2020", "December 2020", "January 2021","February 2021", "March 2021"] #initialise the variable row_value to be used in grid()
    
    lab_list = []
    entry_list =[]
    
    lab_print ()
    
    root.mainloop()
    

    【讨论】:

    • 如果我们在 12 月进行,则标签应为 2020 年 4 月至 2020 年 11 月。如果在 2021 年 1 月,则应为 2020 年 4 月至 2020 年 12 月。
    • 你的答案太棒了!
    猜你喜欢
    • 2021-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-29
    • 1970-01-01
    • 2014-11-14
    • 2012-08-08
    • 2019-01-30
    相关资源
    最近更新 更多