python之tkinter模块——基于tk得图片文字

小编好久没更新了,最近有点事情,虽迟但到。我们补上之前的内容再加以讲解。

tkinter的内置位图预览和图片预览

老样子,先看预览图

 就是简易得调用计算机内部的图片位置,展示出来一个效果图,平时网页上的也是调用服务器内部的图片展示。(附上代码)

from tkinter import *
root=Tk()
root.config(bg='#8DB6CD')
root.title("基于tk得图片文字")
root.geometry('600x600')
cv = Canvas(root,bg='white',width=500,height=500)
bitmaps = ["error","gray75","gray50","gray25","gray12","hourglass","info","questhead","question","warning"]
for i in  range(len(bitmaps)):
    cv.create_bitmap((i+1)*30,30,bitmap=bitmaps[i])

cv.create_text(30,60,text="tkinter内置位图预览",fill='#7CCD7C',anchor= W,font =('微软雅黑',15,'bold'))
img = PhotoImage(file=r"C:\Users\86138\Desktop\python\2021110201142庄乾坤\Stu_Pack/2.png")
cv.create_image(30,220,image= img,anchor=W)
cv.create_text(30,350,text="图片预览",fill='#7CCD7C',anchor = W,font=('微软雅黑',15,'bold'))
cv.pack()
mainloop()

接下来,我们来看页面的选项的制作

 分别点开文件,编辑,视图这些选项卡后会出现各种选项,具体使用for循环实现的,我们来研究下代码。

from tkinter import *
def hello1():
    print('I am a child menu!')
def hello2():
    print(v.get())
def popup(event):
    m2.post(event.x_root,event.y_root)
def hello3():
    print('我是剪切命令')
def hello4():
    print('我是复制命令')
def hello5():
    print('我是粘贴命令')

root=Tk()
root.geometry('400x400+280+280')

v=StringVar(root)
m1=Menu(root)
filemenu=Menu(m1)
editmenu=Menu(m1)
viewmenu=Menu(m1)
for item in ['打开','关闭','退出']:
    filemenu.add_command(label=item,command=hello1)
for item in ['复制','剪切','粘贴']:
    editmenu.add_command(label=item,command=hello1)
for item in ['代码','拆分','设计']:
    viewmenu.add_command(label=item,command=hello1)
m1.add_cascade(label='文件',menu=filemenu)
m1.add_cascade(label='编辑',menu=editmenu)
m1.add_cascade(label='视图',menu=viewmenu)

filemenu.add_separator()
filemenu.add_checkbutton(label='自动保存',command=hello2,variable=v)

m2=Menu(root)
m2.add_command(label='剪切',command=hello3)
m2.add_command(label='复制',command=hello4)
m2.add_command(label='粘贴',command=hello5)
root.bind('<Button-3>',popup)
root['menu']=m1
root.mainloop()

基于tkinter得到canvas几何图形

 分别利用x0,y0,x1,y1得到几何图形的坐标

接下来我们来看看代码

from tkinter import *
root = Tk()
root.config(bg='#8DB6CD')
root.title("基于tk得canvas几何图形")
root.geometry('500x400')

canvas = Canvas(root,width = 400,height = 400,bg='white')
x0,y0,x1,y1 = 10,10,80,80
arc = canvas.create_arc(x0,y0,x1,y1,start=0,extent =270,fill = '#B0E0E6',outline='blue',width = 2)
oval =canvas.create_oval(x0+150,y0,x1+150,y1,fill='#CD950C',outline='blue',width=2)
rect = canvas.create_rectangle(x0,y0+100,x1,y1+100,fill='red',outline='')
trigon = canvas.create_polygon(80,80,150,80,200,200,outline='',fill='green',)

poly_points=[(0,280),(140,200),(140,240),(270,240),(270,320),(140,320),(140,360)]
polygon = canvas.create_polygon(poly_points,fill="#BF3EFF")
canvas.pack()
root.mainloop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值