擅长:python、mysql、java
<p>不应使用<code>pack()</code>和<code>pack_forget()</code>来模拟闪烁,因为如果同一容器中有多个小部件,则标签可能不会放在同一位置。在</p>
<p>另外,使用<code>sleep()</code>将阻止<code>mainloop()</code>处理挂起的事件,这会导致<code>background_label</code>不被更新。在</p>
<p>应更改标签的前景色以模拟闪烁:</p>
<p>创建标签后,首先保存标签的前景色和背景色:</p>
<pre><code>flash_colors = (background_label.cget('bg'), background_label.cget('fg'))
# then flash_colors[0] is label background color
# and flash_colors[1] is label foreground color
</code></pre>
<p>然后修改<code>flashBG()</code>,如下所示:</p>
^{pr2}$
<p><code>flashBG(...)</code>将执行6次(关闭3次,打开3次)。在</p>