第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

是否可以在 tkinter 中用標簽覆蓋輸入字段?

是否可以在 tkinter 中用標簽覆蓋輸入字段?

慕絲7291255 2022-10-06 16:47:49
我有一個簡單的標簽和輸入字段,它將:1)創(chuàng)建一個靜態(tài)標簽并在單擊確認按鈕后清除輸入字段 2)在單擊重置按鈕后清除靜態(tài)標簽有沒有辦法在確認點擊時用用戶輸入的靜態(tài)標簽覆蓋輸入字段,而不是創(chuàng)建新的靜態(tài)標簽?并在重置點擊時用空輸入字段覆蓋靜態(tài)標簽?提前感謝您的幫助。from tkinter import *root = Tk()frame1 = Frame(root)frame1.pack()def reset():     set_cname.destroy()     cbtn['state'] = NORMALdef confirm():    global set_cname    text1="Customer Name: " + entry1.get()    set_cname = Label(frame1, text=text1)    set_cname.grid(row=3, column=0, columnspan=1)    entry1.delete(0, 'end')    cbtn['state'] = DISABLEDcname = Label(frame1, text="Customer Name: ").grid(padx=5, pady=5, columnspan=2, sticky=W)entry1 = Entry(frame1)entry1.grid(row=0, column=2, padx=5)cbtn = Button(frame1, text="Confirm", command=confirm, width=20)cbtn.grid(row=1, column=4, padx=5, pady=5)rbtn = Button(frame1, text="Reset Names", command=reset, width=20)rbtn.grid(row=2, column=4, padx=5, pady=5)root.mainloop()
查看完整描述

1 回答

?
aluckdog

TA貢獻1847條經(jīng)驗 獲得超7個贊

pack()您可以通過首先創(chuàng)建兩者然后使用在它們之間切換來將條目替換為標簽。訣竅是不要讓它們的不同大小影響應用程序布局,這可以通過禁用大小傳播來實現(xiàn)。


在我的示例中,我創(chuàng)建了一個entry_frame具有固定大小的新框架 (),然后禁用大小傳播 ( .pack_propagate(False))。然后我使用這個新框架來包含條目/標簽。我給entry_framebg 顏色卡其色讓您確切地看到它在哪里。


我也擺弄了一下列號。


from tkinter import *


root = Tk()

frame1 = Frame(root)

frame1.pack()


def reset():

     text_label.pack_forget()

     entry1.pack()

     cbtn['state'] = NORMAL


def confirm():

    global set_cname

    entry1.pack_forget()

    text_label.config(text=entry1.get())

    text_label.pack(side='left')

    entry1.delete(0, 'end')

    cbtn['state'] = DISABLED


cname = Label(frame1, text="Customer Name: ")

cname.grid(row=0, column=0, padx=5, pady=5, sticky=W)


entry_frame = Frame(frame1, width=130, height=20, bg='khaki')

entry_frame.grid(row=0, column=1, padx=5, pady=5, sticky='nsew')

entry_frame.pack_propagate(False)   # Disable size propagation

entry1 = Entry(entry_frame)         # Customer name entry

entry1.pack()

text_label = Label(entry_frame)     # Label to hold customer name


cbtn = Button(frame1, text="Confirm", command=confirm, width=20)

cbtn.grid(row=1, column=2, padx=5, pady=5)


rbtn = Button(frame1, text="Reset Names", command=reset, width=20)

rbtn.grid(row=2, column=2, padx=5, pady=5)


root.mainloop()

請注意,此解決方案將對字體大小更改敏感。


查看完整回答
反對 回復 2022-10-06
  • 1 回答
  • 0 關注
  • 140 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號