我正在尝试制作一个发送短信的程序。我唯一的问题是我不能用tkinter做任何事情。对不起,如果听起来有点混乱,英语不是我的第一语言,我会尽力解释清楚
这是一个通过my API发送SMS文本的简单GET请求:
# GET
import requests
to = input("Enter Receiver: ")
fromm = input("Enter Sender: ")
message = input("Enter Message: ")
payload = {'to': to, 'from': fromm, 'message': message, 'email': '@example.com', 'api_secret': '123456789abcdefg'}
r = requests.get('https://example.com/dashboard/api',params=payload)
print(r.text)
发送此Get请求后,我们将收到一个json响应,确认消息已发送
这就是我使用tkinter的GUI的外观:
from tkinter import *
def send_message():
print('sent')
def clear_text():
print('cleared')
#window object
app = Tk()
# Sender
Sender_text = StringVar()
Sender_label = Label(app, text='Sender', font=('bold', 14), pady=20)
Sender_label.grid(row=0, column=0, sticky=W)
Sender_entry = Entry(app, textvariable=Sender_text)
Sender_entry.grid(row=0, column=1)
# Receiver
Receiver_text = StringVar()
Receiver_label = Label(app, text='Receiver', font=('bold', 14))
Receiver_label.grid(row=0, column=2, sticky=W)
Receiver_entry = Entry(app, textvariable=Receiver_text)
Receiver_entry.grid(row=0, column=3)
# Message
Message_text = StringVar()
Message_label = Label(app, text='Message', font=('bold', 14))
Message_label.grid(row=1, column=0, sticky=W)
Message_entry = Entry(app, textvariable=Message_text)
Message_entry.grid(row=1, column=1)
# Buttons
send_btn = Button(app, text='Send', width=12, command=send_message)
send_btn.grid(row=2, column=0, pady=20)
clear_btn = Button(app, text='Clear', width=12, command=clear_text)
clear_btn.grid(row=2, column=1)
app.title('SMS')
app.geometry('430x145')
#start
app.mainloop()
我花了大约两个小时来学习如何制作GUI,但现在我完全迷路了。我不知道如何在GUI中实现逻辑。 如何制作文本&;按钮有用吗?在哪里添加函数? 我真的迷路了
非常感谢您的帮助
参考您的GUI,让我们为您的代码提供更多的结构,以便更清楚地看到正在发生的事情。 我将窗口的设置放在一个函数
my_window
中,将参数app
从main
传递给它。按下按钮send
,sender_text
、receiver_text
和message_text
的值通过使用sender_text.get()
、receiver_text.get()
等获得。。这些结果通过lambda
函数传递给函数send_message
然而,更常见的是将
my_window
定义为class
,并使该clear_text
的函数clear_text
和send_message
方法具有更大的灵活性您只需将逻辑(用
xxx.get()
替换所有input()
)放入函数send_message()
:相关问题 更多 >
编程相关推荐