python - 在 Tkinter 中循环并没有按我的预期工作
问题描述
最后,我试图在 for 循环中更新一些按钮,这些按钮我不想单独创建。
我尝试使用:
While True:
root.update()
以及另一种类型的更新,以及每个单独的更新,但没有运气。
这是代码:
from tkinter import *
from tkinter.ttk import *
from PIL import Image
from functools import partial
import random
#define variables
#main_window_width = 500
#main_window_height = 500
#def functions
buttons_list = []
def InitButtons(n, k):
if k == 0:
k = n
for i in range(n):
InitButtons_column = i
if i//k > 0:
InitButtons_column = i%k
buttons_list.append(Label(main_window, image=button_img))
buttons_list[i].grid(row=(i//k), column=InitButtons_column)
def Hovering(e):
button_img = PhotoImage(file = '/home/klet/Desktop/projects/Python/GUI/button2.png')
buttons_list_button.config(image = button_img)
buttons_list_button.image = button_img
def Clicking(e):
button_img = PhotoImage(file = '/home/klet/Desktop/projects/Python/GUI/button3.png')
buttons_list_button.config(image = button_img)
buttons_list_button.image = button_img
def NotHovering(e):
button_img = PhotoImage(file = '/home/klet/Desktop/projects/Python/GUI/button1.png')
buttons_list_button.config(image = button_img)
buttons_list_button.image = button_img
def UpdatingButtons(n):
n.bind("<Enter>", Hovering)
n.bind("<Leave>", NotHovering)
n.bind("<Button-1>", Clicking)
n.bind("<ButtonRelease-1>", Hovering)
root = Tk()
button_img = PhotoImage(file = "/home/klet/Desktop/projects/Python/GUI/button1.png")
main_window = Frame(root)
main_window.place(relx=0.1, rely=0.1, relwidth=0.8, relheight=0.8)
InitButtons(10, 5)
#buttons_list_tmp1 = 0
#buttons_list_tmp1 += 1
#buttons_list_button =
#UpdatingButtons(buttons_list_tmp1)
#print(buttons_list_tmp1)
for i in range(len(buttons_list)):
buttons_list_button = buttons_list[i]
UpdatingButtons(buttons_list_button)
print(i)
root.mainloop()
上面的 for 循环只重复一次,我希望它不断更新,我还尝试将整个代码(在 root 和 root.mainloop() 中)放在一个 while 循环中,但没有用。我还搜索了一些问题,但它们似乎没有帮助。当我输入按钮和单击时,我想更新按钮(在这种情况下为标签)。这是当前正在发生的事情的一个示例: 链接到 vid
我创建这个帐户只是为了问这个问题,因为我真的不喜欢问问题。
解决方案
推荐阅读
- php - 无法在 Ubuntu 14.04 64 位上安装 PHP 7
- dart - 飞镖中的泛型和动态有什么区别?
- c++ - R Rcpp 定义 qnorm 函数
- python - 使用 pcolormesh 按数组索引绘制颜色
- python-3.x - Groupby 字符串
- java - android 本机应用程序中的 NoSuchElementFoundExeption
- r - 如何使用循环或应用使用不同的变量重复此代码?
- ionic-framework - 缺少适用于 android 的可变 Google api 密钥
- javascript - 我必须在网格系统中使用容器或容器流体吗?
- sql - 水晶报表关闭后如何断开SQL客户端连接