Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Tkinter.Listbox에서 항목의 인덱스를 얻으려면 어떻게 해야 합니까?

<시간/>

Tkinter Listbox 위젯을 사용하여 항목 목록을 만듭니다. 목록 상자의 각 항목에는 세로 순서로 순차적으로 할당되는 일부 색인이 있습니다.

목록 상자에서 클릭한 항목의 인덱스를 가져오려고 한다고 가정해 보겠습니다. 그런 다음 먼저 list.curselection()을 사용하여 항목의 현재 선택을 캡처하는 버튼을 만들어야 합니다. 메소드를 사용하고 get() 을 사용하여 인덱스를 인쇄합니다. 방법.

# Import the required libraries
from tkinter import *

# Create an instance of tkinter frame or window
win = Tk()

# Set the size of the window
win.geometry("700x350")

# Create a Listbox widget
lb = Listbox(win, width=100, height=10, font=('Times 13'), selectbackground="black")
lb.pack()

# Define a function to edit the listbox ite
def save():
   for item in lb.curselection():
      print("You have selected " + str(item+1))

# Add items in the Listbox
lb.insert("end", "A", "B", "C", "D", "E", "F")

# Add a Button To Edit and Delete the Listbox Item
Button(win, text="Save", command=save).pack()

win.mainloop()

출력

위의 코드를 실행하면 알파벳(A-F) 목록이 포함된 창이 표시됩니다.

Tkinter.Listbox에서 항목의 인덱스를 얻으려면 어떻게 해야 합니까?

목록에서 항목을 선택하고 "저장" 버튼을 클릭하면 선택한 항목의 색인이 콘솔에 인쇄됩니다.

You have selected 3