python输出box_python – 从tkinter.Listbox中提取项目列表
时间: 2024-02-27 17:59:16 浏览: 214
你可以使用Tkinter Listbox的curselection()方法获取选定项目的索引,然后使用get()方法提取项目列表。
以下是示例代码:
```
import tkinter as tk
def get_items():
selected_items = [listbox.get(idx) for idx in listbox.curselection()]
print(selected_items)
root = tk.Tk()
listbox = tk.Listbox(root, selectmode=tk.MULTIPLE)
listbox.pack()
listbox.insert(tk.END, "Item 1")
listbox.insert(tk.END, "Item 2")
listbox.insert(tk.END, "Item 3")
listbox.insert(tk.END, "Item 4")
listbox.insert(tk.END, "Item 5")
btn = tk.Button(root, text="Get selected items", command=get_items)
btn.pack()
root.mainloop()
```
此代码创建一个多选Listbox,并在其中添加5个项目。单击按钮后,将调用get_items()函数,该函数将使用curselection()和get()方法提取Listbox中所选项目的列表,并打印它们。
相关问题
import tkinter as tk root=tk.Tk() root.title("Listbox+滚动条") #create a list box langs_var=tk.StringVar() listbox=tk.Listbox(root,listvariable=langs_var,selectmode='extended') for item in ['Java','C#','C','C++','Python','Go','JavaScript','PHP','Swift']: listbox.insert('end',item) for i in ['balana','apple','peach']: listbox.insert('end',i) listbox.pack() if listbox.curselection(): pass else: print("No selection") root.mainloop()
这是一个使用 tkinter 库创建 GUI 界面的 Python 代码,实现了一个带滚动条的列表框。具体解释如下:
1. 导入 tkinter 库,命名为 tk。
2. 创建一个根窗口对象,命名为 root。
3. 设置根窗口的标题为 "Listbox+滚动条"。
4. 创建一个变量对象 langs_var,用于存储列表框中的选项。
5. 创建一个列表框对象 listbox,将其绑定到根窗口,设置其显示模式为 'extended',并将其关联到变量 langs_var。
6. 使用 for 循环向列表框中添加选项。
7. 将列表框放置到根窗口中。
8. 判断列表框中是否有选中项,如果有则不执行任何操作,否则输出 "No selection"。
9. 进入主事件循环,等待用户操作。
需要注意的是,在判断列表框中是否有选中项时,应该将 if 语句放置在进入主事件循环之前,否则无法实时判断用户的选择。
tkinter box
Tkinter的Box是指Tkinter库中的列表框(Listbox)控件。列表框是一个可以显示多个选项的窗口部件,用户可以从中选择一个或多个选项。
在Tkinter中,可以使用Listbox类创建一个列表框,并通过insert()方法添加选项到列表框中。通过设置selectmode属性可以指定选择模式,可以选择单个选项或多个选项。
例如,下面的代码创建了一个包含一些选项的列表框,并设置了多选模式:
```
import tkinter as tk
alist = ['python', 'tkinter', 'java', 'c']
root = tk.Tk()
listbox = tk.Listbox(root, selectmode='multiple')
for item in alist:
listbox.insert('end', item)
listbox.pack()
root.mainloop()
```
运行这段代码,就会显示一个包含四个选项的列表框,用户可以通过鼠标点击或按住Ctrl键进行多选。选中的选项的状态将显示为'active'。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [tkinter学习与实践](https://blog.csdn.net/fflush_stdin/article/details/125595731)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *3* [tkinter应知应会(六):listbox控件,展示列表内容](https://blog.csdn.net/qq_44625592/article/details/109233079)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文