python-3.x - Tkinter 按钮只能工作一次

标签 python-3.x tkinter raspberry-pi3

Tkinter 按钮仅运行单独的脚本一次

大家好,我是 python 和 raspberry pi 的新手,一直在四处寻找如何让 Tkinter 按钮在我的 raspberry pi 上多次运行脚本。根据研究,我认为这与 name="ma​​in"有关,但我无法弄清楚需要做什么以及为什么。我的按钮在生成 RF 信号的同一目录中运行一个单独的 python 文件(称为 SendRF.py),它第一次工作,但单击按钮之后什么也不做。任何建议将不胜感激:)

from tkinter import *

#create a window
window =Tk()
window.title("Chappers Home Automation project")

#define a function
def test_function ():
    import SendRF

#create a button
B = Button(text ="Test Button 1", command=test_function)

B.pack(padx = 100, pady = 50)
window.mainloop()

没有出现错误消息。第一次按下按钮时,按钮会发送 RF 信号,但再次单击按钮时不会发生任何情况。

最佳答案

您不能多次导入模块。同一模块的每次额外导入都是一个 NOP。您需要函数化 sendRF 中的所有内容,并在 test_function 中调用该函数。

关于python-3.x - Tkinter 按钮只能工作一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56534623/

相关文章:

python : cant open file 'hw.py' : [Errno 2] No such file or directory

python - 基于按组 ID 索引的组中最大 3 个元素的新列

python - Tkinter 菜单中的单选按钮

python-3.x - Python 3 和 Tkinter 有问题且缓慢

python - 对 opencv 直播流应用多重效果

android - 如何为 Raspberry Pi3 设置 WiFi 网络共享到 Android Things

python 3.5 在 statsmodels ImportError : cannot import name '_representation'

windows-7 - 在 Windows 7 上使用 Python 安装 Robot Framework 时发生错误

Python 3.7 阻碍其他 Python 版本在虚拟环境中的使用

python - 在 tkinter 中获取子元素的宽度