欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

tkinter实现电子时钟 博客分类: python tkinter电子时钟 

程序员文章站 2024-03-11 21:18:49
...

一 代码

  1. import tkinter
  2. import threading
  3. import datetime
  4. import time
  5. app = tkinter.Tk()
  6. app.overrideredirect(True)#不显示标题栏
  7. app.attributes('-alpha',0.9)#半透明
  8. app.attributes('-topmost',1)#总是在顶端
  9. app.geometry('110x25+100+100')#初始大小与位置
  10. labelDateTime = tkinter.Label(app)
  11. labelDateTime.pack(fill=tkinter.BOTH, expand=tkinter.YES)
  12. labelDateTime.configure(bg ='gray')
  13. X = tkinter.IntVar(value=0)#记录鼠标左键按下的位置
  14. Y = tkinter.IntVar(value=0)
  15. canMove = tkinter.IntVar(value=0)#窗口是否可拖动
  16. still = tkinter.IntVar(value=1)#是否仍在运行
  17. def onLeftButtonDown(event):
  18. app.attributes('-alpha',0.4)#开始拖动时增加透明度
  19. X.set(event.x)#鼠标左键按下,记录当前位置
  20. Y.set(event.y)
  21. canMove.set(1)#并标记窗口可拖动
  22. labelDateTime.bind('<Button-1>', onLeftButtonDown)
  23. def onLeftButtonUp(event):
  24. app.attributes('-alpha',0.9)#停止拖动时恢复透明度
  25. canMove.set(0)#鼠标左键抬起,标记窗口不可拖动
  26. labelDateTime.bind('<ButtonRelease-1>', onLeftButtonUp)
  27. def onLeftButtonMove(event):
  28. if canMove.get()==0:
  29. return
  30. newX = app.winfo_x()+(event.x-X.get())
  31. newY = app.winfo_y()+(event.y-Y.get())
  32. g ='110x25+'+str(newX)+'+'+str(newY)
  33. app.geometry(g)#修改窗口的位置
  34. labelDateTime.bind('<B1-Motion>', onLeftButtonMove)
  35. def onRightButtonDown(event):
  36. still.set(0)
  37. t.join(0.2)
  38. app.destroy()#关闭窗口
  39. labelDateTime.bind('<Button-3>', onRightButtonDown)
  40. def nowDateTime():
  41. while still.get()==1:
  42. now = datetime.datetime.now()
  43. s = str(now.year)+'-'+str(now.month)+'-'+str(now.day)+' '
  44. s = s+str(now.hour)+':'+str(now.minute)+':'+str(now.second)
  45. labelDateTime['text']= s #显示当前时间
  46. time.sleep(0.2)
  47. t = threading.Thread(target=nowDateTime)
  48. t.daemon =True
  49. t.start()
  50. app.mainloop()
二 运行结果
tkinter实现电子时钟
            
    
    博客分类: python tkinter电子时钟 
 
  • tkinter实现电子时钟
            
    
    博客分类: python tkinter电子时钟 
  • 大小: 1.2 KB