Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Lấy vị trí con trỏ trong widget Entry Tkinter

Chúng ta đã quen với các form nhập liệu nơi nhiều trường Entry đơn lẻ được tạo để thu thập đầu vào người dùng. Với Tkinter, chúng ta cũng có thể tạo trường nhập đơn lẻ bằng widget Entry. Mỗi ký tự trong trường Entry mà người dùng nhập được lập chỉ mục. Do đó, bạn có thể lấy chỉ mục này để lấy vị trí hiện tại của con trỏ bằng phương thức index(). Để lấy vị trí hiện tại của con trỏ, bạn có thể truyền đối số INSERT vào hàm này.

Ví dụ

# Nhập thư viện cần thiết
from tkinter import *
from tkinter import ttk

# Tạo instance của cửa sổ tkinter
win = Tk()
win.geometry("700x350")
win.title("Get the Cursor Position")

# Tạo instance của lớp style
style = ttk.Style(win)

# Hàm lấy vị trí hiện tại của con trỏ
def get_current_info():
    print("The cursor is at: ", entry.index(INSERT))

# Tạo widget entry
entry = ttk.Entry(win, width=18)
entry.pack(pady=30)

# Tạo widget nút
button = ttk.Button(win, text="Get Info", command=get_current_info)
button.pack(pady=30)

win.mainloop()

Kết quả

Chạy mã trên sẽ hiển thị cửa sổ với widget Entry và nút có thể dùng để lấy chỉ mục hiện tại của con trỏ.

Lấy vị trí con trỏ trong widget Entry Tkinter

Nhập một số văn bản vào widget Entry và nhấn nút "Get Info". Nó sẽ in vị trí hiện tại của con trỏ ra console.

The cursor is at: 15