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()