亲宝软件园·资讯

展开

利用tkinter实现下拉框联动

码上有钱啊 人气:0

tkinter如何实现下拉框联动

有些小伙伴想在GUI界面上实现像前端一样的下拉框联动的效果,但是前端可以通过Ajax实现,

GUI如何实现呢,以下代码为你揭晓:

import tkinter as tk
from tkinter import ttk
 
# 定义选择框内容
select = {"第一季度": ("1月", "2月",),
          "第二季度": ("4月", "5月", "6月"),
          "第三季度": ("8月", "7月", "9月"),
          "第四季度": ("10月", "11月", "12月")}
 
# 创建窗体
root = tk.Tk()
# 创建字符型变量
xVariable = tk.StringVar()
# 创建下拉选择框,使用网格布局
com1 = ttk.Combobox(root, textvariable=xVariable)
com1.grid(row=1, column=1)
# 设置第一个下拉框的内容
com1['value'] = list(select.keys())
 
# 同样的方法创建第二个下拉框和他的文本变量
yVariable = tk.StringVar()
com2 = ttk.Combobox(root, textvariable=yVariable)
com2.grid(row=1, column=3)
 
 
# 定义方法供第一个下拉框变化时调用
def xFunc(event):
    com2.delete(0, tk.END)
    value = xVariable.get()
    com2['value'] = select[value]
    com2.current(0)  # 设置默认值
 
 
# 第一个下拉框绑定方法
com1.bind("<<ComboboxSelected>>", xFunc)
root.mainloop()

tkinter(Combobox下拉菜单)笔记

目标

学习Tkinter制作窗体软件的基础,Combobox下拉菜单的制作。

试验平台

直接上代码

import tkinter
from tkinter import ttk
 
 
win = tkinter.Tk()
win.title("Kahn Software v1")    # #窗口标题
win.geometry("500x300+200+20")   # #窗口位置500后面是字母x
 
'''
下拉菜单
'''
xVariable = tkinter.StringVar()     # #创建变量,便于取值
 
com = ttk.Combobox(win, textvariable=xVariable)     # #创建下拉菜单
com.pack()     # #将下拉菜单绑定到窗体
com["value"] = ("河北", "河南", "山东")    # #给下拉菜单设定值
com.current(2)    # #设定下拉菜单的默认值为第3个,即山东
 
def xFunc(event):
    print(com.get())            # #获取选中的值方法1
    print(xVariable.get())      # #获取选中的值方法2
 
com.bind("<<ComboboxSelected>>", xFunc)     # #给下拉菜单绑定事件
 
win.mainloop()   # #窗口持久化

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

加载全部内容

相关教程
猜你喜欢
用户评论