2017-06-22 48 views
2

所以我想知道是否有人能够帮助我在Python中处理一些事情。想要澄清程序循环(Python)

我正在用Tkinter GUI界面创建一个程序,该界面与串行设备交互,并使用ADC芯片来测量电压。我想确保我正确理解我如何构建主程序循环以保持一切顺利运行。我将阐述我认为该计划应该如何运行,如果有人有任何更正,请把它们扔给我。

  1. 程序运行时,GUI接口初始化
  2. 用户按下一个按键按钮的
  3. 发送信号通过串行
  4. 测量/显示电压电平
  5. 周期性地更新电压显示
  6. 如果按钮是按回到步骤3

现在我知道运行我的Tkinter GUI,我设置mainloop()作为最后一行代码。现在我的问题很简单,就是我需要的一切?当mainloop()等待另一个按钮按下时,它会不断更新,或者我基本上必须创建一个循环遍历所有内容的更新方法,直到按下另一个按钮为止?

+3

_“或者我基本上必须创建一个循环遍历所有内容直到另一个按钮被按下的更新方法?”_ - 并非全部。这就是为什么你使用'Tk()。mainloop()'。 'tkinter'为你做到这一点。你所要做的就是实现当按下按钮时应该发生的功能。 'tkinter'会听按钮按下你的。 –

+0

@ChristianDean你应该发布这个答案。很好地解释。 – Abiezer

+0

@ChristianDean所以如果我希望程序在按下按钮后每秒更新一次电压(等待另一个按下时),我不需要'while buttonPressed'循环或任何东西? – Skitzafreak

回答

3

当mainloop()等待另一个按钮按下时,它会不断更新,还是基本上不得不创建一个循环遍历所有内容直到另一个按钮被按下的更新方法?

并非全部。这就是为什么你使用tk.Tk().mainloop()。 tkinter为你做这个。你所要做的就是实现当按下按钮时应该发生的功能。 tkinter会听按钮按下。