《Python GUI设计 tkinter菜鸟编程》配套代码 第13章 OptionMenu与Combobox

ch13_1.py

# ch13_1.py
from tkinter import *

root = Tk()
root.title("ch13_1")
root.geometry("300x180")

var = StringVar(root)
optionmenu = OptionMenu(root,var,"Python","Java","C")
optionmenu.pack()

root.mainloop()

ch13_2.py

# ch13_2.py
from tkinter import *

root = Tk()
root.title("ch13_2")
root.geometry("300x180")

omTuple = ("Python","Java","C")       # 使用元组
# omTuple = ["Python","Java","C"]     # 使用列表
var = StringVar(root)
optionmenu = OptionMenu(root,var,*omTuple)
optionmenu.pack()

root.mainloop()

ch13_3_1.py

# ch13_3_1.py
from tkinter import *

root = Tk()
root.title("ch13_3_1")
root.geometry("300x180")

omTuple = ("Python","Java","C")       # 使用元组
# omTuple = ["Python","Java","C"]     # 使用列表
var = StringVar(root)
var.set(omTuple[0])
optionmenu = OptionMenu(root,var,*omTuple)
optionmenu.pack()

root.mainloop()

ch13_3.py

# ch13_3.py
from tkinter import *

root = Tk()
root.title("ch13_3")
root.geometry("300x180")

omTuple = ("Python","Java","C")       # 使用元组
# omTuple = ["Python","Java","C"]     # 使用列表
var = StringVar(root)
var.set("Python")
optionmenu = OptionMenu(root,var,*omTuple)
optionmenu.pack()

root.mainloop()

ch13_4.py

# ch13_4.py 
from tkinter import * 
def printSelection(): 
    print("The selection is : ",var.get()) 

root = Tk()
root.title("ch13_4")
root.geometry("300x180")

omTuple = ("Python","Java","C")       # 使用元组
# omTuple = ["Python","Java","C"]     # 使用列表
var = StringVar(root)
var.set("Python")
optionmenu = OptionMenu(root,var,*omTuple)
optionmenu.pack(pady=10)

btn = Button(root,text="Print",command=printSelection)
btn.pack(pady=10,anchor=S,side=BOTTOM)

root.mainloop()

ch13_5.py

# ch13_5.py 
from tkinter import * 
from tkinter.ttk import *

root = Tk()
root.title("ch13_5")        # 窗口标题
root.geometry("300x120")

var = StringVar()
cb = Combobox(
                root,
                textvariable=var,
                value=("Python","Java","C#","C")
)

cb.pack(pady=10)
root.mainloop()

ch13_6.py

# ch13_6.py 
from tkinter import * 
from tkinter.ttk import *

root = Tk()
root.title("ch13_6")                              # 窗口标题
root.geometry("300x120")

var = StringVar()
cb = Combobox(root,textvariable=var)              # 创建Combobox
cb["value"] = ("Python","Java","C#","C","C++")    # 设置选项内容
cb.pack(pady=10)

root.mainloop()

ch13_7.py

# ch13_7.py 
from tkinter import * 
from tkinter.ttk import *

root = Tk()
root.title("ch13_7")                              # 窗口标题
root.geometry("300x120")

var = StringVar()
cb = Combobox(root,textvariable=var)              # 创建Combobox
cb["value"] = ("Python","Java","C#","C","C++")    # 设置选项内容
cb.current(0)
cb.pack(pady=10)

root.mainloop()

ch13_8.py

# ch13_8.py 
from tkinter import * 
from tkinter.ttk import *

root = Tk()
root.title("ch13_7")                              # 窗口标题
root.geometry("300x120")

var = StringVar()
cb = Combobox(root,textvariable=var)              # 创建Combobox
cb["value"] = ("Python","Java","C#","C","C++")    # 设置选项内容
var.set("Python")  # cb.current(0)
cb.pack(pady=10)

root.mainloop()

ch13_9.py

# ch13_9.py 
from tkinter import * 
from tkinter.ttk import *
def printSelection():  # 打印选择的结果
    print(var.get())

root = Tk()
root.title("ch13_9")                              # 窗口标题
root.geometry("300x120")

var = StringVar()
cb = Combobox(root,textvariable=var)              # 创建Combobox
cb["value"] = ("Python","Java","C#","C","C++")    # 设置选项内容
cb.current(0)
cb.pack(pady=10)

btn = Button(root,text="Print",command=printSelection)  # 创建按钮
btn.pack(pady=10,anchor=S,side=BOTTOM)

root.mainloop()

ch13_10.py

# ch13_10.py 
# from tkinter import * 
from tkinter.ttk import *
from tkinter import *     
# 注意这两句导入语句的顺序,颠倒之后会有差异
# tkinter.label和tkinter.ttk.label的参数有差异,bg和background会有不同
def comboSelection(event):    # 打印选择的结果
    labelVar.set(var.get())   # 同步标签内容

root = Tk()
root.title("ch13_10")                              # 窗口标题
root.geometry("300x120")

var = StringVar()
cb = Combobox(root,textvariable=var)              # 创建Combobox
cb["value"] = ("Python","Java","C#","C","C++")    # 设置选项内容
cb.current(0)
cb.bind("<<ComboboxSelected>>",comboSelection)    # 绑定
cb.pack(side=LEFT,padx=10,pady=10)

print("var: ",var.get())

labelVar = StringVar()
label = Label(root,bg="yellow",textvariable=labelVar)
labelVar.set(var.get())
label.pack(side=LEFT)

root.mainloop()
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值