您的位置:首页 > 编程语言 > Python开发

python的GUI,tkinter详解

2017-08-26 23:18 731 查看
http://blog.csdn.net/blockcsh/article/details/71945968?locationNum=9&fps=1

目录

.tkinter的两种写法,这两种写法是有区别的,

第一种,使用就需要加类名,也就是需要加tkinter,

第二种,已经把tkinter完全导入了,你不用管调用的是哪个类,只管使用就可以了。所以不需要加类名。

#法1:
import tkinter
win=tkinter.Tk()
win.mainloop()
#法2:
from tkinter import *
win=Tk()


labellabel是一个提示框,这里先做一个简单的使用介绍

importtkinter       #导入tkinter包
win=tkinter.Tk()        #创建一个窗体
l1=tkinter.Label(win,text="hellopython")    #label的意思是标签,这里就是显示一个名为hellopython的标签
l1.pack()       #只有打包之后才能生效
win.mainloop()      #这一步是保存窗口开启的状态,消息循环


匿名对象打包

tkinter.Label(win,text="hellopython").pack()    #控件对象位置固定,可以用匿名对象打包


label的深入使用介绍

方法1
import tkinter
win=tkinter.Tk()
l1=tkinter.Label(win,       #这个是父窗体,
anchor=tkinter.CENTER,      #anchor的意思是锚的意思,这里就是定位
#关于定位,位置有N,S,W,E,NE,NW,SW,SE,CENTER
bg="blue",      #background背景颜色是blue
fg="red",       #foreground前景颜色,也就是文字颜色是红色
text="hellopython",     #文本为hellopython
width=<
4000
span class="hljs-number">30,       #宽度为30
height=30)      #高度为30
l1.pack()
win.mainloop()


方法2:
import tkinter
win=tkinter.Tk()
l2=tkinter.Label(win,text="python\nhelloworld",
justify=tkinter.CENTER,
#justify动词有证明的意思,这里的意思是调整的意思。用法和方法一一样。其他的都和第一种方法一致。
width=30,
height=30)


button按钮,按下的时候,会触发事件

from tkinter import *
import tkinter
def clickout():      #这个是事件,只有在鼠标按下的时候会触发事件。
print("OK")
win=Tk()        #这里是创建了一个窗体
button=Button(win,
anchor=tkinter.N,       #这里和标签的用法一致。
text="press",       #按钮上面的文本是press
command=clickout,
#这里专门起一行写command,因为实在是很重要。command是命令的意思,在鼠标按下之前,command是没有反应的,只有在鼠标按下,才会触发指令,调用clickout这个函数,这里面有一个易错点就是clickout后面一定不能加(),否则程序到这里的时候就会直接调用执行。
width=10,
height=5)       #函数当作参数
button.pack()
win.mainloop()


这里进行canvas的学习(画布)

import tkinter
root=tkinter.Tk()
canvas=tkinter.Canvas(root,     #父窗体#如果没有canvas=tkinter.Canvas(),画布没有创建,后面的都办法执行。
width=800,      #宽度
height=600,     #高度
bg="green"      #背景颜色
)
canvas.create_text(100,100,text="helloworld",fill="yellow")     #填充颜色#这里面,100,100就是text的位置
im=tkinter.PhotoImage(file="1.gif")     #载入图片这里只有png和gif格式的可以,而jpg格式的却不可以。
#地址这里可以写为绝对地址。
canvas.create_image(300,200,image=im)       #载入图片
canvas.create_line(100,200,300,500)     #划线
canvas.create_polygon(290,114,316,114,330,130,310,146,284,146,270,130)#六边形
canvas.create_oval(60,60,180,180,fill="white")      #椭圆
canvas.create_rectangle(90,190,510,410,width=14)        #矩形
canvas.pack()       #打包,如果不打包,画布就不会产生效果
root.mainloop()


checkbutton

import tkinter
win=tkinter.Tk()
r=tkinter.StringVar()       #生成字符串变量,关联控件StringVar是字符串变量。
r.set("2")      #必须得输入一个值,否则会默认都选择。
#输入返回值是None
radio1=tkinter.Radiobutton(win,variable=r,value="a",text="go1")     #radiobutton的意思是单选按钮
radio1.pack()
radio2=tkinter.Radiobutton(win,variable=r,value="b",text="go2")
radio2.pack()
radio3=tkinter.Radiobutton(win,variable=r,value="c",text="go3")
radio3.pack()

c=tkinter.IntVar()      #数字标识复选
c.set(1)    #默认值必须选
check=tkinter.Checkbutton(win,text="huang",variable=c,onvalue=10,offvalue=12)
#checkbutton的意思是复选框    onvalue是选中的值   offvalue是选中了又取消了的值
check.pack()
win.mainloop()      #等待程序关闭
print(r.get())
print(c.get())
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: