按下 Enter 时获取 tkinter 列表框选择的项目,然后关闭

Get tkinter listbox selected item when Enter is pressed, and close

此代码创建一个 listbox:

from tkinter import *
listbox = Listbox(Tk())
listbox.pack()
for item in ["1", "2", "3"]:
    listbox.insert(END, item)
listbox.select_set(0)
listbox.focus_set()
mainloop()

我想关闭 listbox 并在按下 ENTER 时获取所选项目的索引。

如何使用 Tkinter 执行此操作?

你应该首先定义一个Tk的实例,你可以通过调用destroy来关闭它。要通过 ENTER 关闭 GUI,请将事件绑定到 <Return>

import tkinter as tk

root = tk.Tk()

listbox = tk.Listbox(root)
listbox.pack()
for item in ["1", "2", "3"]:
    listbox.insert("end", item)
listbox.select_set(0)
listbox.focus_set()

def exit_gui(event):
    global result
    result = listbox.curselection()
    root.destroy()

root.bind("<Return>",exit_gui)
root.mainloop()

print (result)