日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

Python GUI 編程:tkinter 初學(xué)者入門指南——單行文本框

Python GUI 編程:tkinter 初學(xué)者入門指南——單行文本框

文章圖片

Python GUI 編程:tkinter 初學(xué)者入門指南——單行文本框

文章圖片

Python GUI 編程:tkinter 初學(xué)者入門指南——單行文本框
在本文中 , 將介紹如何使用 tkinter Entry 小部件 。 tkinter Entry 小部件允許創(chuàng)建能夠輸入的單行文本框 。
要?jiǎng)?chuàng)建 Entry 單行文本框 , 請(qǐng)按如下方式使用構(gòu)造函數(shù):
textbox = tk.Entry(master **options)
通常 , 將 Entry 單行文本框輸入的當(dāng)前值與 StringVar 對(duì)象相關(guān)聯(lián) 。
創(chuàng)建 Entry 單行文本框import tkinter as tkroot = tk.Tk()root.geometry('300x200+200+200')root.title('entry 單行文本框演示')text = tk.StringVar()entry = tk.Entry(roottextvariable=text)entry.pack(padx=10 pady=10 expand=True)root.mainloop()
獲取文本框內(nèi)容要將 Entry 單行文本框中的當(dāng)前文本作為字符串獲取 , 可以使用 get() 方法 。
import tkinter as tkroot = tk.Tk()root.geometry('300x200+200+200')root.title('entry 單行文本框演示')def print_entry():entry_text=entry.get()print(entry_text)text = tk.StringVar()entry = tk.Entry(roottextvariable=text)entry.pack(padx=10 pady=10 expand=True)button = tk.Button(roottext=\"輸出\"command=print_entry)button.pack(ipadx=5 ipady=5 expand=True)root.mainloop()
以上示例中 , 創(chuàng)建一個(gè)按鈕 , 用于將 Entry 單行文本框的文本內(nèi)容輸出到 shell 。
單行文本框獲取焦點(diǎn)為了提供更好的用戶體驗(yàn) , 可以讓窗口中的第一個(gè)單行文本框自動(dòng)獲得焦點(diǎn) , 直接接受用戶輸入 。 可以使用 focus() 方法 。
作為密碼輸入框使用要在單行文本框上輸入時(shí)隱藏敏感信息 , 例如密碼 , 可以添加參數(shù):show='*' 。 輸入密碼時(shí) , 它不會(huì)顯示實(shí)際字符 , 而是顯示參數(shù)中指定的星號(hào) 。
import tkinter as tkroot = tk.Tk()root.geometry('300x200+200+200')root.title('entry 單行文本框演示')text = tk.StringVar()entry = tk.Entry(roottextvariable=textshow='*')entry.pack(padx=10 pady=10 expand=True)entry.focus()root.mainloop()
其他可選參數(shù)及方法

  • bg : 背景顏色 。
  • bd : 邊框大小 。 默認(rèn)值為 2 像素 。
  • font :文本字體 。
  • fg :文本顏色 。
  • justify :文本對(duì)齊方式: CENTER、LEFT 或 RIGHT 。
  • width:文本框?qū)挾?。
  • delete(index)方法:從文本框中刪除給定索引的字符 。
  • insert(index'name')方法:在給定索引處插入字符串 。
只讀文本框如果希望顯示的文本可以選擇和復(fù)制但不能修改 , 可以將文本框設(shè)置為只讀 。 這在用戶需要能夠查看數(shù)據(jù) , 還有保證數(shù)據(jù)完整性時(shí)非常有用 。
import tkinter as tkroot = tk.Tk()root.geometry('300x200+200+200')root.title('entry 單行文本框演示')text = tk.StringVar()entry = tk.Entry(roottextvariable=text)entry.insert(0 \"該文字只讀!\")entry.config(state='readonly')entry.pack(padx=10 pady=10 expand=True)root.mainloop()
文本框文本校驗(yàn)如果想限制文本框文本類型的輸入 , 可以通過驗(yàn)證來執(zhí)行此操作 。 例如 , 一個(gè)只接受整數(shù)文本框 。 可以使用參數(shù) validatecommand、validate等檢查其有效性 。
以下示例中 , 文本框只接受數(shù)字輸入 , 不能輸入其他字符 。
import tkinter as tkroot = tk.Tk()root.geometry('300x200+200+200')root.title('entry 單行文本框演示')def callback(input):return input.isdigit()text = tk.StringVar()reg = root.register(callback) entry = tk.Entry(root textvariable=text width=30 validate=\"key\" validatecommand=(reg '%P'))entry.pack(padx=10 pady=10 expand=True)root.mainloop()登錄窗口示例import tkinter as tkfrom tkinter.messagebox import showinforoot = tk.Tk()root.geometry('300x200+200+200')root.title('登錄窗口演示')email = tk.StringVar()password = tk.StringVar()def login_clicked():msg = f'電子郵件:{email.get()\ 密碼:{password.get()'showinfo(title='登錄信息' message=msg)email_label = tk.Label(root text=\"電子郵件:\")email_label.pack(pady=10)email_entry = tk.Entry(root textvariable=email width=30)email_entry.pack()email_entry.focus()password_label = tk.Label(root text=\"密碼:\")password_label.pack()password_entry = tk.Entry(root textvariable=password width=30 show=\"*\")password_entry.pack()login_button = tk.Button(root text=\"登錄\" command=login_clicked width=30)login_button.pack(pady=10)root.mainloop()【Python GUI 編程:tkinter 初學(xué)者入門指南——單行文本框】

    推薦閱讀