我正在尝试使用Tkinter和Pywhatkit构建应用程序,其功能是您输入电话号码,消息和时间(以分钟,秒为单位)。我做了前端,但后端有点复杂,这是代码:
import tkinter as tk
import pywhatkit
root = tk.Tk()
def Function():
n=Entry1.get()
m=Entry2.get()
l=Entry3.get()
i=Entry4.get()
pywhatkit.sendwhatmsg("+91n","m",l,i)
Label1 = tk.Label(root, text="Mscheduler",bg='#99e6ff',font="Verdana 34")
Label1.grid(columnspan=1)
Label2= tk.Label(root,text="Enter phone no.",bg="#c2f0c2",font="verdana 22")
Label2.grid(row=2 , column=0)
Entry1=tk.Entry(root,bg="#ffe6b3",font="verdana 22")
Entry1.grid(row=2, column=1)
Label3= tk.Label(root,text="Enter message.",bg="#c2f0c2",font="verdana 22")
Label3.grid(row=3 , column=0)
Entry2=tk.Entry(root,bg="#ffe6b3",font="verdana 22")
Entry2.grid(row=3, column=1)
Label4= tk.Label(root,text="Enter time.",bg="#c2f0c2",font="verdana 22")
Label4.grid(row=4 , column=0)
Entry3=tk.Entry(root,bg="#ffe6b3",font="verdana 22")
Entry3.grid(row=4, column=1)
Entry4=tk.Entry(root,bg="#ffe6b3",font="verdana 22")
Entry4.grid(row=4, column=2)
Button1=tk.Button(root, text="send", bg="#d1d1e0", font="verdana 16", command=Function)
Button1.grid(row=5, column=1)
root.mainloop()
答案 0 :(得分:2)
我去了pywhatkit
文档,并查看了您要使用的功能。它需要一个字符串格式的电话号码,一个字符串格式的消息,一个int格式的小时和一个int格式的分钟。
我将所有Entry
小部件重命名为“电话”,“消息”,“小时”和“分钟”,因为它们就是这些。然后,我将您的“消息” Entry
更改为Text
小部件。我在想,您允许输入消息的15个左右的字符根本不足以说什么。然后,我将您的Function
函数重命名为send
,因为它就是这样做的。
最后,我将sendwhatmsg
调用中的参数设置为字符串格式的电话号码,字符串格式的消息,int格式的小时和int格式的分钟,因为这正是文档说要做。
import tkinter as tk
import pywhatkit
root = tk.Tk()
root.grid_columnconfigure(2, weight=1)
def send():
#print(f'+91{phone.get()}', message.get('1.0', 'end-1c'), int(hour.get()), int(minute.get()))
pywhatkit.sendwhatmsg(f'+91{phone.get()}', message.get('1.0', 'end-1c'), int(hour.get()), int(minute.get()))
#title
tk.Label(root, text="Mscheduler", bg='#99e6ff', font="Verdana 34").grid(columnspan=3, sticky='w')
#phone
tk.Label(root,text="Phone: ", bg="#c2f0c2", font="verdana 22").grid(row=1, column=0, sticky='w')
phone = tk.Entry(root, bg="#ffe6b3", font="verdana 22", width=10)
phone.grid(row=1, column=1, sticky='w', columnspan=2)
#message
tk.Label(root,text="Message: ", bg="#c2f0c2", font="verdana 22").grid(row=2, column=0, sticky='nw')
message=tk.Text(root, bg="#ffe6b3", font="verdana 22", height=4, width=32)
message.grid(row=2, column=1, sticky='w', columnspan=2)
#time
tk.Label(root,text="Time HH:MM", bg="#c2f0c2", font="verdana 22").grid(row=3, column=0, sticky='w')
#hour
hour=tk.Entry(root, bg="#ffe6b3", font="verdana 22", width=2)
hour.grid(row=3, column=1, sticky='w')
#minute
minute=tk.Entry(root, bg="#ffe6b3", font="verdana 22", width=2)
minute.grid(row=3, column=2, sticky='w')
#send button
tk.Button(root, text="send", bg="#d1d1e0", font="verdana 16", command=send).grid(row=4, column=2, sticky='e')
root.mainloop()