我想重复使用这个下拉框,但是这样只能用一次
时间: 2023-09-05 18:11:13 浏览: 45
如果你想重复使用下拉框,你可以将其包装在一个函数中,这样你可以在任何地方调用该函数来创建新的下拉框。以下是一个简单的例子:
```python
import tkinter as tk
def create_dropdown(parent, options):
var = tk.StringVar(parent)
var.set(options[0])
dropdown = tk.OptionMenu(parent, var, *options)
dropdown.pack()
return dropdown, var
# 创建一个主窗口
root = tk.Tk()
# 创建第一个下拉框
options1 = ['Option 1', 'Option 2', 'Option 3']
dropdown1, var1 = create_dropdown(root, options1)
# 创建第二个下拉框
options2 = ['Option A', 'Option B', 'Option C']
dropdown2, var2 = create_dropdown(root, options2)
# 运行主循环
root.mainloop()
```
在这个例子中,`create_dropdown` 函数接受一个父级窗口和选项列表作为参数,并返回一个下拉框对象和一个 `StringVar` 对象,该对象跟踪当前选择的值。你可以在需要创建新下拉框的地方调用该函数,并使用返回的对象来访问和更改选择的值。
相关问题
动态下拉框 但是每次只能拿到第一次的值
您好,关于您的问题,我需要更多的信息来帮助您解决问题。以下是我需要了解的一些信息:
1. 你是在哪个平台或者编程语言上实现这个动态下拉框的功能?
2. 动态下拉框的数据是从哪里获取的?是从数据库中获取还是从其他地方获取的?
3. 您是如何获取下拉框中的值的?是通过 JavaScript 或者其他方式获取的?
请提供这些信息,以便我更好地帮助您解决问题。谢谢!
给我写layui中下拉框只能选中一次的代码
好的,以下是layui中下拉框只能选中一次的代码:
HTML代码:
```
<div class="layui-form-item">
<label class="layui-form-label">下拉框</label>
<div class="layui-input-inline">
<select lay-verify="required" id="select">
<option value=""></option>
<option value="1">选项一</option>
<option value="2">选项二</option>
<option value="3">选项三</option>
</select>
</div>
</div>
```
JavaScript代码:
```
layui.use(['form'], function () {
var form = layui.form;
// 监听select选中事件
form.on('select(select)', function(data){
// 隐藏下拉框
$(data.elem).hide();
// 获取选中的值
var value = data.value;
// 显示选中的值
console.log(value);
});
});
```
以上代码实现了当用户选中下拉框中的一个选项后,下拉框自动隐藏,并且将选中的值输出到控制台。用户再次点击时下拉框不会弹出。