Python GUI tkinter窗口视窗学习3

# test9
import tkinter as tk
window = tk.Tk()
window.title('my test9')
window.geometry('700x400')
l = tk.Label(window,bg = 'green',width = 20,text = 'empty')
l.pack()
def print_selection():
	if (var1.get() == 1) & (var2.get() == 0):     # 如果选中第一个选项,未选中第二个选项
		l.config(text='I love only Python ')
	elif (var1.get() == 0) & (var2.get() == 1):   # 如果选中第二个选项,未选中第一个选项
		l.config(text='I love only go')
	elif (var1.get() == 0) & (var2.get() == 0):   # 如果两个选项都未选中
		l.config(text='I do not love either')
	else:
		l.config(text='I love both')             # 如果两个选项都选中
# 定义两个checkbutton选项并放置  
# 存放选择值
var1 = tk.IntVar()
var2 = tk.IntVar()
c1 = tk.Checkbutton(window,text = 'python',variable=var1,onvalue = 1,offvalue = 0,command = print_selection)
c2 = tk.Checkbutton(window,text = 'go',variable=var2,onvalue = 1,offvalue = 0,command = print_selection)
c1.pack()
c2.pack()
window.mainloop()

import tkinter as tk  # 使用Tkinter前需要先导入
 
# 第1步,实例化object,建立窗口window
window = tk.Tk()
 
# 第2步,给窗口的可视化起名字
window.title('My Window')
 
# 第3步,设定窗口的大小(长 * 宽)
window.geometry('500x300')  # 这里的乘是小x
 
# 第4步,在图形界面上创建一个标签label用以显示并放置
l = tk.Label(window, bg='green', fg='white', width=20, text='empty')
l.pack()
 
# 第6步,定义一个触发函数功能
def print_selection(v):
    l.config(text='you have selected ' + v)
# 第5步,创建一个尺度滑条,长度200字符,从0开始10结束,以2为刻度,精度为0.01,触发调用print_selection函数
s = tk.Scale(window, label='try me', from_=0, to=10, orient=tk.HORIZONTAL, length=200, showvalue=0,tickinterval=2, resolution=0.01, command=print_selection)
s.pack()
 
# 第7步,主窗口循环显示
window.mainloop()

# test11
import tkinter as tk
window = tk.Tk()
window.title('my test')
window.geometry('700x400')
# 用tkinter只能装入GIF图片,也就是扩展名是.gif的图片文件
canvas = tk.Canvas(window,bg = 'green',height=350,width =700)
image_file = tk.PhotoImage(file = 'pic.gif')
# 图片锚定点(n图片顶端的中间点位置)放在画布(350,0)坐标处  (最上方的中间位置)
image = canvas.create_image(350,0,anchor = 'n',image=image_file) 
# 画图形
x0,y0,x1,y1 = 100,100,150,150 
line = canvas.create_line(x0,y0,x1,y1)
oval = canvas.create_oval(x0+120, y0+50, x1+120, y1+50, fill='yellow')  # 画圆 用黄色填充
arc = canvas.create_arc(x0, y0+50, x1, y1+50, start=0, extent=180)      # 画扇形 从0度打开收到180度结束
rect = canvas.create_rectangle(0, 30, 40, 30+20)                  # 画矩形正方形
canvas.pack()
window.mainloop()

# test12
import tkinter as tk
window = tk.Tk()
window.title('my test')
window.geometry('700x400')
l = tk.Label(window,text = '     ',bg = 'green')
l.pack()
counter = 0
def do_job():
	global counter
	l.config(text='do '+ str(counter))
	counter += 1
# 创建一个菜单栏(窗口上方)
menubar = tk.Menu(window)
# 创建一个file菜单项,默认不下拉
filemenu = tk.Menu(menubar,tearoff = 0)
menubar.add_cascade(label = 'File',menu = filemenu) 
filemenu.add_command(label='New', command=do_job)
filemenu.add_command(label='Open', command=do_job)
filemenu.add_command(label='Save', command=do_job)
filemenu.add_separator()    # 添加一条分隔线
filemenu.add_command(label='Exit', command=window.quit) # 用tkinter里面自带的quit()函数

editmenu = tk.Menu(menubar, tearoff=0)
# 将上面定义的空菜单命名为 Edit,放在菜单栏中,就是装入那个容器中
menubar.add_cascade(label='Edit', menu=editmenu)
 
# 同样的在 Edit 中加入Cut、Copy、Paste等小命令功能单元,如果点击这些单元, 就会触发do_job的功能
editmenu.add_command(label='Cut', command=do_job)
editmenu.add_command(label='Copy', command=do_job)
editmenu.add_command(label='Paste', command=do_job)
# 二级菜单
submenu = tk.Menu(filemenu) # 和上面定义菜单一样,不过此处实在File上创建一个空的菜单
filemenu.add_cascade(label='Import', menu=submenu, underline=0)
submenu.add_command(label='Submenu_1', command=do_job)
window.config(menu=menubar)
window.mainloop()

 posted on 2020-09-23 19:38  My_serendipity  阅读(113)  评论(0编辑  收藏  举报