代码如下(一个正在建造的带倒计时功能的时钟):
# -*- coding: utf-8 -*-
import tkinter as tk
import time as tm
from PIL import ImageTk
import math as mt
hour_len = 50
minute_len = 75
sec_len = 100
root = tk.Tk()
root.title('PyTimer')
root.geometry('400x400')
root.attributes('-alpha',0.8)
root.configure(background='#002FA7')
root.minsize(400,400)
root.maxsize(400,400)
canvas = tk.Canvas(root,width=400,height=400,bg='#002FA7')
canvas.pack()
#bg = ImageTk.PhotoImage(file='sources\\bgglasses.jpg')
#canvas.create_image(0,0,image=bg)
canvas.create_oval(50,50,350,350)
def setTime():
global entry
entry = tk.Entry(root)
entry.place(x=20,y=20)
button_to_set = tk.Button(root,text='press me to set',command=helpSetTime)
button_to_set.place(x=30,y=20)
def helpSetTime():
global count_down
count_down = entry.get()
def handler():
global run
run = False
root.protocol('WM_DELETE_WINDOW',handler)
run = True
button = tk.Button(root,text='test',command=setTime)
button.place(x=0,y=0)
while run:
sec = tm.localtime(tm.time()).tm_sec
minute = tm.localtime(tm.time()).tm_min
hour = tm.localtime(tm.time()).tm_hour
if sec < 10:
sec_text = '0'+str(sec)
else:
sec_text = str(sec)
if minute < 10:
minute_text = '0' + str(minute)
else:
minute_text = str(minute)
angle_sec = mt.pi*3/2-2*mt.pi*(sec/60)
angle_minute = mt.pi*3/2-2*mt.pi*(minute/60)
if minute >= 12:
angle_hour = mt.pi*3/2-2*mt.pi*(hour-12)/12
elif minute < 12:
angle_hour = mt.pi*3/2-2*mt.pi*hour/12
hour_text = str(hour)
hour_hand = canvas.create_line(200,200,200-hour_len*mt.cos(angle_hour),200+hour_len*mt.sin(angle_hour))
minute_hand = canvas.create_line(200,200,200-minute_len*mt.cos(angle_minute),200+minute_len*mt.sin(angle_minute))
sec_hand = canvas.create_line(200,200,200-sec_len*mt.cos(angle_sec),200+sec_len*mt.sin(angle_sec))
label = canvas.create_text(200,250,text=hour_text+':'+minute_text+':'+sec_text,font=('微软雅黑',15),activefill='#FFD058',disabledfill='#FFD058')
canvas.update()
global time_exist
try:
count_down
except NameError:
time_exist = False
else:
time_exist = True
if time_exist:
label_count_down = canvas.create_text(x=300,y=200,text='101')
canvas.delete(hour_hand,minute_hand,sec_hand,label)
print(time_exist)
del(sec,minute,hour,angle_sec,angle_minute,angle_hour,hour_hand,minute_hand,sec_hand,label,hour_text,minute_text,sec_text)
root.destroy()
在vscode中报warnings:
请问这是怎么回事?
你这代码我跑得动啊,没问题啊(写python用什么vs)