выбранное значение калибровки в метке не отображается.Также я хотел бы получить значение в виде целых чисел, чтобы найти разницу - PullRequest
0 голосов
/ 11 июня 2019

отредактировано для включения минимального исполняемого кода

это калькулятор цен-

метки check_in_date и can_date не отображают текстовые переменные c и d.

Мне также нужно получить выбранные значения cal из check_in_date и can_date, чтобы найти разницу и сохранить ее в третьем ярлыке totaldays

Я новичок в кодировании, только неделю назад и может быть немного шатким по основам

def pay_cal():

    def cal_fun():
        t = Toplevel()
        global cal
        cal = Calendar(t, year=2019, month=6, day=1, foreground='Blue', background='White', selectmode='day')
        cal.pack()
        cal.bind("<<CalendarSelected>>", lambda e: c.set(cal.get_date())) #make use of the virtual event to dynamically update the text variable c
        cal.bind("<<CalendarSelected>>", lambda f: d.set(cal.get_date()))

    sub_win = Tk()
    sub_win.geometry('400x500+600+100')
    sub_win.title('Payout Calculator')
    c = StringVar() 
    d = StringVar()

    l1 = Button(sub_win, text= 'Check-In Date:', command= cal_fun)
    check_in_date = Label(sub_win, textvariable=c)
    l1.grid(row=1)
    check_in_date.grid(row=1, column=2)

    L2 = Button(sub_win, text= 'Cancellation Date:', command= cal_fun)
    can_date = Label(sub_win, textvariable=d)
    L2.grid(row=2)
    can_date.grid(row=2, column=2)


    td = c.get() - c.get()
    td_var = IntVar(td)
    total_days = Label(sub_win, textvariable= td_var )
    L3 = Label(sub_win, text="Total Days")
    total_days.grid(row=3)
    L3.grid(row=3, column=2)


    L4 = Label(sub_win, text='Nightly Rate Prior Cancellation:')
    nightly_rate = Entry(sub_win)
    L4.grid(row=4)
    nightly_rate.grid(row=4, column=2)

    L5 = Label(sub_win, text='Cleaning Fee:')
    CleaningFee = Entry(sub_win)
    L5.grid(row=5)
    CleaningFee.grid(row=5, column=2)

    L6 = Label(sub_win, text='Service Fee:')
    chck_in_date = Entry(sub_win)

    L7 = Label(sub_win, text='Total Host Payout:')
    chck_in_date = Entry(sub_win)

    L8 = Label(sub_win, text='$ Released to Host to Date:')
    ReleasedToHostToDate = Entry(sub_win)
    L8.grid(row=8)
    ReleasedToHostToDate.grid(row=8, column=2)

    L9 = Label(sub_win, text='Payout to be Released:')
    payouttobereleased = Entry(sub_win)
    L9.grid(row=9)
    payouttobereleased.grid(row=9, column=2)

    L10 = Label(sub_win, text='Payout still Pending:')
    payoutstillpending = Entry(sub_win)
    L10.grid(row=10)
    payoutstillpending.grid(row=10, column=2)


    L10 = Label(sub_win, text='Offset Amount:')
    offset_amt = Label(sub_win, text="test")

    sub_win.mainloop()

pay_cal()
...