当前位置:首页 » 编程语言 » tkinterpython3

tkinterpython3

发布时间: 2023-06-10 08:35:46

‘壹’ 如何使用python3自带的tkinter生成气泡提示

可以参考这个:
fromtkinterimport*
fromtimeimporttime,localtime,strftime


classToolTip(Toplevel):
"""
.
,simplypassthewidgettothe
ToolTipconstructor
"""
def__init__(self,wdgt,msg=None,msgFunc=None,delay=1,follow=True):
"""
InitializetheToolTip

Arguments:
wdgt:
msg:
msgFunc:
delay:(maybefloat)
follow:IfTrue,theToolTipfollowsmotion,otherwisehides
"""
self.wdgt=wdgt
self.parent=self.wdgt.master#
Toplevel.__init__(self,self.parent,bg='black',padx=1,pady=1)#InitalisetheToplevel
self.withdraw()#Hideinitially
self.overrideredirect(True)#

self.msgVar=StringVar()#
ifmsg==None:
self.msgVar.set('Nomessageprovided')
else:
self.msgVar.set(msg)
self.msgFunc=msgFunc
self.delay=delay
self.follow=follow
self.visible=0
self.lastMotion=0
Message(self,textvariable=self.msgVar,bg='#FFFFDD',
aspect=1000).grid()#
self.wdgt.bind('<Enter>',self.spawn,'+')#Addbindingstothewidget.
self.wdgt.bind('<Leave>',self.hide,'+')
self.wdgt.bind('<Motion>',self.move,'+')

defspawn(self,event=None):
"""
SpawntheToolTip..


Arguments:
event:
"""
self.visible=1
self.after(int(self.delay*1000),self.show)#

defshow(self):
"""

"""
ifself.visible==1andtime()-self.lastMotion>self.delay:
self.visible=2
ifself.visible==2:
self.deiconify()

defmove(self,event):
"""
.

Arguments:
event:
"""
self.lastMotion=time()
ifself.follow==False:#Ifthefollowflagisnotset,
self.withdraw()
self.visible=1
self.geometry('+%i+%i'%(event.x_root+10,event.y_root+10))#
try:
self.msgVar.set(self.msgFunc())#Trytocallthemessagefunction.ails
except:
pass
self.after(int(self.delay*1000),self.show)

defhide(self,event=None):
"""
HidestheToolTip.

Arguments:
event:
"""
self.visible=0
self.withdraw()


defxrange2d(n,m):
"""


Arguments:
n:Thenumberofrowsinthe2drange
m:
Returns:
Ageneratorofvaluesina2drange
"""
return((i,j)foriinxrange(n)forjinxrange(m))


defrange2d(n,m):
"""


Arguments:
n:Thenumberofrowsinthe2drange
m:
Returns:
Alistofvaluesina2drange
"""
return[(i,j)foriinrange(n)forjinrange(m)]


defprint_time():
"""
:
HH:MM:SS.00
"""
t=time()
timeString='time='
timeString+=strftime('%H:%M:',localtime(t))
timeString+='%.2f'%(t%60,)
returntimeString

defmain():
root=Tk()
btnList=[]
for(i,j)inrange2d(6,4):
text='delay=%i '%i
delay=i
ifj>=2:
follow=True
text+='+follow '
else:
follow=False
text+='-follow '
ifj%2==0:
msg=None
msgFunc=print_time
text+='MessageFunction'
else:
msg='Buttonat%s'%str((i,j))
msgFunc=None
text+='StaticMessage'
btnList.append(Button(root,text=text))
ToolTip(btnList[-1],msg=msg,msgFunc=msgFunc,follow=follow,delay=delay)
btnList[-1].grid(row=i,column=j,sticky=N+S+E+W)
root.mainloop()

if__name__=='__main__':
main()

‘贰’ Python3 tkinter,怎么在Label/Canvas中插入图片

tkinter基于tcl/tk,只支持gif、png和bitmap位图,其余图片格式需要通过第三方库PIL(pillow)提供的ImageTk转化为tcl/tk能够接受的图片数据。

‘叁’ python3的tkinter代码,为什么会报错

1、可能是数据类型错误,int()接收到一个字符型。或是接收到的是一个浮点型。浮点型需要先转换。
比如int(10.0)需要改成int(float(10.0))。
2、可能是代码写错了,比如少打了个引号

热点内容
pid算法调速 发布:2025-02-13 21:20:31 浏览:686
脚本中new 发布:2025-02-13 21:00:11 浏览:741
什么配置的笔记本电脑能玩神武 发布:2025-02-13 20:54:40 浏览:179
挑选云服务器需要注意什么 发布:2025-02-13 20:53:31 浏览:98
加密滴胶卡 发布:2025-02-13 20:30:48 浏览:275
javalogin 发布:2025-02-13 20:25:48 浏览:427
智联招聘无法上传照片 发布:2025-02-13 20:16:03 浏览:529
python元素替换list 发布:2025-02-13 20:03:48 浏览:773
windows系统账户名和密码是多少 发布:2025-02-13 20:03:02 浏览:531
我的世界带有商店服务器好吗 发布:2025-02-13 20:02:50 浏览:616