擅长:python、mysql、java
<p>在当前程序中,只需按一次键即可执行<code>trinke_wasser()</code>函数。您要做的是打开一个调度程序函数,该函数每小时调用一次该函数。
但您必须允许此功能永久终止。因此,您需要一个全局布尔变量,可以关闭该变量以结束循环。(您也可以通过强制方式结束程序执行,但这并不好)</p>
<p>因此,您要做的是通过在脚本开头添加<code>import time</code>来导入时间库。
定义了<code>fenstern</code>之后,只要不将其设为false,只需将<code>True</code>属性添加到此窗口即可:<code>fenstern.running = True</code></p>
<p>然后,您可以使您的计划程序运行:</p>
<pre><code>def nerv_mich(delay = 3600):
while fenstern.running:
trinke_wasser()
time.sleep(3600)
</code></pre>
<p>此功能将永远运行,并要求您每3600秒喝水一次</p>
<p>您只需调整第一个按钮的命令:</p>
<pre><code>die_Taste = Button(fenstern, text = "Beginnen", command = nerv_mich)
</code></pre>
<p>现在,您只需使用<code>yes</code>定义之后的第二个按钮将其关闭</p>
<pre><code>fertig = Button(rhamen, text = "Fertig jetzt!", command = lambda: choice ("fertig"), bg = "orange")
yes.grid(row=2, column=1)
</code></pre>
<p>最后,您必须更改函数<code>choice()</code>,以便在传递给它的选项为<code>"fertig"</code>之后真正结束整个过程:</p>
<pre><code>def choice(option):
pop.destroy()
if option=="fertig": fenstern.running=False
</code></pre>
<p>这应该行得通。您还可以使用<code>fentstern.destroy()</code>在此时完全结束您的程序。老实说,您可能并不真正需要这个初始窗口</p>