微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从行中删除输入的标签

如何解决从行中删除输入的标签

我正在编写一些程序,在其中键入一些输入,并将其打印在标签中。您可以继续输入内容,它只会使您输入的内容排成一行。

我试图在单击按钮并输入标签所在的行时添加按钮,它将删除标签并将所有标签向上移动。

以下功能将输入追加到列表中,并将其打印为一列标签

global input_data
input_data = []

global counters
counters = {'total_entries':0,'name_count':0}
def append_entry():

    leader_error_var.set("")
    location_error_var.set("")
    numcamper_error_var.set("")
    weather_error_var.set("")

    name_count = 0
    ROWS_ABOVE = 6

    try:
        name_entry_str = str(name_entry.get())
        hired_entry_str = str(hired_entry.get())
        receipt_entry_int = float(receipt_entry.get())
        num_hired_entry_int = float(num_hired_entry.get())

        #[name_entry_str,hired_entry_str,receipt_entry_int,num_hired_entry_int]

        #[name_entry.get(),hired_entry.get(),receipt_entry.get(),num_hired_entry.get()]
    
        if len(name_entry.get()) != 0:
            input_data.append([name_entry_str,num_hired_entry_int])
            #j_names.append(age_get)
            counters['total_entries'] += 1
        print(input_data)


       
        while name_count < counters ['total_entries']:
            global name 
            name = Label(main_window,text=(input_data[name_count][0]))
            name.grid(column=1,row=name_count + ROWS_ABOVE)
            
            item = Label(main_window,text=(input_data[name_count][1]))
            item.grid(column=2,row=name_count + ROWS_ABOVE)
            
            row = Label(main_window,text=name_count)
            row.grid(column=0,row=name_count + ROWS_ABOVE)
            
            receipt = Label(main_window,text=(input_data[name_count][2]))
            receipt.grid(column=3,row=name_count + ROWS_ABOVE)
            
            num = Label(main_window,text=(input_data[name_count][3]))
            num.grid(column=4,row= name_count + ROWS_ABOVE)
            
            ""
            name_count += 1

        name_entry.delete(0,END)
        receipt_entry.delete(0,END)
        hired_entry.delete(0,END)
        num_hired_entry.delete(0,END)

    except:
        leader_error_var.set("Check inputs")
        #location_error_var.set("please enter a valid num")
        #numcamper_error_var.set("numcamper error test")
        weather_error_var.set("")

        name_entry.delete(0,END)

函数尝试删除该行,但效果不佳

def delete_row ():
    del input_data[int(delete_row_entry.get())]
    name_count = counters['name_count']
    counters['total_entries'] =- 1
    name.destroy()
    Label(main_window,text='').grid(column=0,row= name_count+6)
    Label(main_window,text='').grid(column=1,text='').grid(column=2,text='').grid(column=3,text='').grid(column=4,row= name_count+6)
    append_entry()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。