1.python代码
import tkinter as tk
import time
def update_time(entry_widget):
current_time = str(int(time.time()))
entry_widget.delete(0, tk.END)
entry_widget.insert(0, current_time)
root.after(1000, update_time, entry_widget)
def convert_timestamp():
val = entry4_1.get()
if val and val.isdigit():
try:
timestamp = float(entry4_1.get())
time_struct = time.localtime(timestamp)
formatted_time = time.strftime("%Y-%m-%d %H:%M:%S", time_struct)
entry6_1.delete(0, tk.END)
entry6_1.insert(0, formatted_time)
except ValueError:
entry6_1.delete(0, tk.END)
entry6_1.insert(0, "无效时间戳")
else:
entry6_1.delete(0, tk.END)
entry6_1.insert(0, "值为空或不符合时间戳格式")
def set_default_time():
current_time = time.localtime()
year = str(current_time.tm_year)
month = str(current_time.tm_mon)
day = str(current_time.tm_mday)
hour = str(current_time.tm_hour)
minute = str(current_time.tm_min)
second = str(current_time.tm_sec)
entry8_1.delete(0, tk.END)
entry8_1.insert(0, year)
entry8_2.delete(0, tk.END)
entry8_2.insert(0, month)
entry8_3.delete(0, tk.END)
entry8_3.insert(0, day)
entry9_1.delete(0, tk.END)
entry9_1.insert(0, hour)
entry9_2.delete(0, tk.END)
entry9_2.insert(0, minute)
entry9_3.delete(0, tk.END)
entry9_3.insert(0, second)
def convert_to_timestamp():
year = entry8_1.get()
month = entry8_2.get()
day = entry8_3.get()
hour = entry9_1.get()
minute = entry9_2.get()
second = entry9_3.get()
if not all([year, month, day, hour, minute, second]):
entry11_1.delete(0, tk.END)
entry11_1.insert(0, "有值为空,请全部输入")
return
try:
year = int(year)
month = int(month)
day = int(day)
hour = int(hour)
minute = int(minute)
second = int(second)
except ValueError:
entry11_1.delete(0, tk.END)
entry11_1.insert(0, "输入值不符合时间格式,请重新输入")
return
try:
time_struct = time.struct_time((year, month, day, hour, minute, second, 0, 0, 0))
timestamp = int(time.mktime(time_struct))
entry11_1.delete(0, tk.END)
entry11_1.insert(0, str(timestamp))
except ValueError:
entry11_1.delete(0, tk.END)
entry11_1.insert(0, "输入的时间值不合法,请重新输入")
return
root = tk.Tk()
root.title("时间戳转换")
root.geometry('400x400')
frame1 = tk.Frame(root, pady=5)
frame1.pack()
label1_1 = tk.Label(frame1, text="Unix时间戳在线转换器")
label1_1.pack(side=tk.LEFT)
frame2 = tk.Frame(root, pady=5)
frame2.pack()
label2_1 = tk.Label(frame2, text="现在时间戳")
entry2_1 = tk.Entry(frame2)
label2_1.pack(side=tk.LEFT)
entry2_1.pack(side=tk.LEFT)
update_time(entry2_1)
frame3 = tk.Frame(root, pady=5)
frame3.pack()
label3_1 = tk.Label(frame3, text="时间戳转换成时间日期格式")
label3_1.pack(side=tk.LEFT)
frame4 = tk.Frame(root, pady=5)
frame4.pack()
label4_1 = tk.Label(frame4, text="时间戳")
entry4_1 = tk.Entry(frame4)
label4_1.pack(side=tk.LEFT)
entry4_1.pack(side=tk.LEFT)
frame5 = tk.Frame(root, pady=5)
frame5.pack()
buttion5_1 = tk.Button(frame5, text="转换成时间日期", command=convert_timestamp)
buttion5_1.pack(side=tk.LEFT)
frame6 = tk.Frame(root, pady=5)
frame6.pack()
label6_1 = tk.Label(frame6, text="时间")
entry6_1 = tk.Entry(frame6, width=20)
label6_1.pack(side=tk.LEFT)
entry6_1.pack(side=tk.LEFT)
frame7 = tk.Frame(root, pady=5)
frame7.pack()
label7_1 = tk.Label(frame7, text="时间日期转换时间戳")
label7_1.pack(side=tk.LEFT)
frame8 = tk.Frame(root, pady=5)
frame8.pack()
entry8_1 = tk.Entry(frame8, width=5)
label8_1 = tk.Label(frame8, text="年")
entry8_2 = tk.Entry(frame8, width=5)
label8_2 = tk.Label(frame8, text="月")
entry8_3 = tk.Entry(frame8, width=5)
label8_3 = tk.Label(frame8, text="日")
entry8_1.pack(side=tk.LEFT)
label8_1.pack(side=tk.LEFT)
entry8_2.pack(side=tk.LEFT)
label8_2.pack(side=tk.LEFT)
entry8_3.pack(side=tk.LEFT)
label8_3.pack(side=tk.LEFT)
frame9 = tk.Frame(root, pady=5)
frame9.pack()
entry9_1 = tk.Entry(frame9, width=5)
label9_1 = tk.Label(frame9, text="时")
entry9_2 = tk.Entry(frame9, width=5)
label9_2 = tk.Label(frame9, text="分")
entry9_3 = tk.Entry(frame9, width=5)
label9_3 = tk.Label(frame9, text="秒")
entry9_1.pack(side=tk.LEFT)
label9_1.pack(side=tk.LEFT)
entry9_2.pack(side=tk.LEFT)
label9_2.pack(side=tk.LEFT)
entry9_3.pack(side=tk.LEFT)
label9_3.pack(side=tk.LEFT)
frame10 = tk.Frame(root, pady=5)
frame10.pack()
buttion10_1 = tk.Button(frame10, text="转换成时间戳", command=convert_to_timestamp)
buttion10_1.pack(side=tk.LEFT)
frame11 = tk.Frame(root, pady=5)
frame11.pack()
label11_1 = tk.Label(frame11, text="时间戳")
entry11_1 = tk.Entry(frame11, width=30)
label11_1.pack(side=tk.LEFT)
entry11_1.pack(side=tk.LEFT)
set_default_time()
root.mainloop()
2.打包命令
命令会打处理一个单独exe文件在dist里;没有ico就把"--icon=xx.ico"去掉,有的话保证路径正确.
pyinstaller --noconsole --icon=xxx.ico main.py -n timestamp -F