我使用Tkinter创建一个按钮,该按钮上有图像,我希望每次更新变量或调用要求更新的函数时,它都会更改。
这就是我所拥有的:
from Tkinter import *
tk = Tk()
i1 = PhotoImage(file='resources/1.png')
b1 = Button(tk, image=i1, command=c1)
# this all the way to i151 and b151
我希望每次变量变化时都改变它,我不想用151个全局函数来实现它。
我正在创建一个简单的GUI,包括两个按钮。第一个按钮用于选择视频文件,第二个按钮获取视频文件路径,然后播放(使用OpenCV)。
问题是我无法从第一个按钮绑定函数返回文件路径,并将其传递给第二个按钮绑定函数。
我将"filename“定义为全局变量,但"filename”仍未在"PlayVideo()“函数中定义。
以下是我的代码:
from tkinter import *
from tkinter import filedialog
from tkinter import messagebox
global filename
def OpenFile():
在普通的Python 3.4中,如果你想在字符串中间打印一个变量,你可以这样做:
x = 31
print("The value of x is %s" % (x))
它将打印The value of x is 31。
在Tkinter中,如果你想让标签读取某个变量,你只需定义标签,如果标签的变量在任何时候发生变化,如果是Tkinter标签,标签就会自动更新。例如:
var = StringVar()
var.set("Label")
label = Label(main, text=var)
但是,如果我想让字符串的一部分成为Tkinter中的变量...
it
我为Tkinter按钮设置的命令是一个更改标签文本的函数。然而,文本似乎并没有改变!
我试图使用函数"textChange()“更改的变量称为" text ",其值的目的是作为一个名为"finalText”的标签的文本。但是,标签"finalText“的文字并没有改变!
#Imports
from tkinter import *
#Variables
wn = Tk()
text = 'Button Commands'
#Change Text
def textChange():
global variable
text
如果单击Tkinter按钮并关闭窗口,我们如何更改变量的值
我尝试的是:
import tkinter
m = tkinter.Tk()
lis = ['hi', 'how', 'are', 'you'] # values can be anything
def change_value(val):
global var
var = val
var = ''
for i, j in enumerate(lis):
b = tkinter.Button(m, text=j, comma
当for loop运行时,我的Tkinter变得复杂、卡住和非交互,我遇到了一个问题。我的示例代码在循环中打印“循环”,并且UI上有一个"Cancel“按钮,它应该停止循环,但是由于我无法单击"Cancel”按钮,所以循环无法停止。因此,我的问题是如何在循环运行时使我的tkinter UI可用。下面是示例代码:
from tkinter import*
import time
root = Tk()
i=10
flag = False
def loop():
flag = True
for i in range(100):
if flag
当每个按钮被单击时,我需要更新按钮。我不想创建九个或更多的函数并将每个函数分配给这些按钮,所以我将创建一个函数并将其分配给每个按钮的命令。如何配置按下并调用该函数的按钮?
import tkinter
window = tkinter.Tk()
window.title("TTT")
white = "#f6f6f6"
black = "#050505"
grey = "#C3C3C3"
def update():
#button.config(fg=white)
#THIS PART IS THE PROB
我想使用tkinter和复选框来选择目录中的文件,并在按下按钮时将这些文件名保存在列表中:
import speech_recognition as sr
import playsound
import os
import glob
import unidecode
import pickle
import random
import tkinter
from tkinter.constants import *
ldv = os.listdir("D:/FFOutput/")
i = 0
ldv1 = []
while i < len(ldv):
ldv1.a