Tkinter Veri Girişi / Tkinter Entry

Bu eğitimde, bir metin kutusu oluşturmak için Tkinter Entry widget'ını nasıl kullanacağınızı öğreneceksiniz.

Tkinter Giriş widget'ına giriş

Widget Entrytek satırlık bir metin girmenizi sağlar. Tkinter'da bir metin kutusu oluşturmak için widget'ı kullanırsınız Entry:

textbox = ttk.Entry(container, **options)Kod dili:  Python  ( python )

Bu sözdiziminde:

  • Ana çerçeve veya containerpenceredir . _ Widget'ı yerleştirmek istediğiniz yer.
  • optionsWidget'ı yapılandırmak için kullanılan bir veya daha fazla anahtar kelime bağımsız değişkenidir Entry.

Çok satırlı metin girmek istiyorsanız widget'ı kullanmanız gerektiğini unutmayın Text.

Bir widget'ın geçerli metnini Entrydize olarak almak için şu yöntemi kullanırsınız get():

textbox.get()Kod dili:  Python  ( python )

Genellikle metin kutusunun geçerli değerini aşağıdaki gibi bir StringVar nesnesiyle ilişkilendirirsiniz:

text = tk.StringVar()
textbox = ttk.Entry(root, textvariable=text)Kod dili:  Python  ( python )

Bu sözdiziminde:

  • İlk önce sınıfın yeni bir örneğini oluşturun StringVar. Metin, bir dize değişkeninin değer sahibi olacaktır.
  • İkinci olarak, metin değişkenini widget'ın öğesine textvariableatayın Entry.

Bu durumda, giriş widget'inin geçerli değerini almak için nesnenin get()çağrı yöntemini kullanabilirsiniz :StringVar()

text.get()Kod dili:  CSS  ( css )

Odağı Tkinter Giriş widget'ına ayarlama

EntryDaha iyi bir kullanıcı deneyimi sağlamak için, pencere göründükten sonra odağı ilk widget'a taşıyabilirsiniz . Widget odaklandığında Entrykullanıcı girişini kabul etmeye hazırdır.

focus()Bunu yapmak için widget'ın yöntemini Entryşu şekilde kullanırsınız :

textbox.focus()Kod dili:  Python  ( python )

Tkinter şifre girişi gösteriliyor

Widget'taki şifre gibi hassas bilgileri gizlemek için Entrybu seçeneği kullanabilirsiniz show.

Aşağıdakiler bir şifre girişi oluşturur. Bir şifre girdiğinizde, gerçek karakterler değil, seçenekte belirtilen yıldız işaretleri (*) gösterilir show:

password = tk.StringVar()
password_entry = ttk.Entry(
    root,
    textvariable=password,
    show='*'
)
password_entry.pack()Kod dili:  Python  ( python )

Tkinter Giriş widget'ı örneği

Aşağıdaki program, Entryoturum açma formu oluşturmak için widget'ların nasıl kullanılacağını gösterir:

import tkinter as tk
from tkinter import ttk
from tkinter.messagebox import showinfo

# root window
root = tk.Tk()
root.geometry("300x150")
root.resizable(False, False)
root.title('Sign In')

# store email address and password
email = tk.StringVar()
password = tk.StringVar()


def login_clicked():
    """ callback when the login button clicked
    """
    msg = f'You entered email: {email.get()} and password: {password.get()}'
    showinfo(
        title='Information',
        message=msg
    )


# Sign in frame
signin = ttk.Frame(root)
signin.pack(padx=10, pady=10, fill='x', expand=True)


# email
email_label = ttk.Label(signin, text="Email Address:")
email_label.pack(fill='x', expand=True)

email_entry = ttk.Entry(signin, textvariable=email)
email_entry.pack(fill='x', expand=True)
email_entry.focus()

# password
password_label = ttk.Label(signin, text="Password:")
password_label.pack(fill='x', expand=True)

password_entry = ttk.Entry(signin, textvariable=password, show="*")
password_entry.pack(fill='x', expand=True)

# login button
login_button = ttk.Button(signin, text="Login", command=login_clicked)
login_button.pack(fill='x', expand=True, pady=10)


root.mainloop()Kod dili:  Python  ( python )

Çıktı:

Tkinter Veri Girişi / Tkinter Entry

Nasıl çalışır.

İlk olarak, e-posta ve şifre widget'larının geçerli metnini tutacak iki dize değişkeni oluşturun Entry:

# store email address and password
email = tk.StringVar()
password = tk.StringVar()Kod dili:  Python  ( python )

İkinci olarak, e-posta widget'ını oluşturun Entryve onu e-posta değişkeniyle ilişkilendirin:

email_entry = ttk.Entry(signin, textvariable=email)Kod dili:  Python  ( python )

Aşağıdaki setler girişe odaklanır email:

email_entry.focus()Kod dili:  Python  ( python )

Üçüncü olarak, şifre girişi widget'ını oluşturun ve şifre değişkenini ona atayın textvariable:

password_entry = ttk.Entry(signin, textvariable=password, show="*")Kod dili:  Python  ( python )

Son olarak, giriş düğmesine tıklanırsa girilen e-postayı ve şifreyi gösteren bir mesaj kutusu görüntüleyin.

Özet

  • ttk.EntryBir metin kutusu oluşturmak için widget'ı kullanın .
  • StringVar()Widget'ın geçerli metnini Entrybir dize değişkeniyle ilişkilendirmek için sınıfın bir örneğini kullanın .
  • showŞifre girişi oluşturmak için seçeneği kullanın .

Kaynak

Yorumunuzu Ekleyin


Yükleniyor...
    Yükleniyor...