Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีล้างเนื้อหา Text widget เมื่อคลิกที่ Entry widget เองใน Tkinter


Tkinter Text widget เป็น Input widget ที่รองรับการป้อนข้อมูลหลายบรรทัด ยังเรียกว่า Text Editor ซึ่งอนุญาตให้ผู้ใช้เขียนเนื้อหาและข้อมูลในนั้น เนื้อหาของ Text widget สามารถล้างได้โดยกำหนดคำสั่ง delete(0, END) ทั่วไปเราสามารถล้างเนื้อหาโดยการคลิกที่ Entry widget เองได้ ซึ่งทำได้โดยการผูกฟังก์ชันกับอีเวนต์คลิก

ตัวอย่าง

# นำเข้าไลบรารีที่จำเป็น
from tkinter import *

# สร้างอินสแตนซ์ของ Tkinter Frame
win = Tk()
# กำหนดขนาดของ Tkinter Frame
win.geometry("700x250")

# กำหนดฟังก์ชันล้างเนื้อหาของ text widget
def click(event):
    name.configure(state=NORMAL)
    name.delete(0, END)
    name.unbind('', clicked)

# สร้าง Label widget
label = Label(win, text="Enter Your Name", font=('Helvetica 13 bold'))
label.pack(pady=10)

# สร้าง Entry widget
name = Entry(win, width=45)
name.insert(0, 'Enter Your Name Here...')
name.pack(pady=10)

# ผูก Entry widget กับปุ่มเมาส์เพื่อล้างเนื้อหา
clicked = name.bind('', click)

win.mainloop()

ผลลัพธ์

การรันโค้ดข้างต้นจะแสดงหน้าต่างพร้อม Entry widget

วิธีล้างเนื้อหา Text widget เมื่อคลิกที่ Entry widget เองใน Tkinter

เมื่อเราคลิกที่ช่อง Entry จะล้างเนื้อหาอัตโนมัติ

วิธีล้างเนื้อหา Text widget เมื่อคลิกที่ Entry widget เองใน Tkinter