在普通的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
我要疯了,想通过StringVar更新这个标签。我在网上读了上百万的答案,看了很多教程,但在我运行程序的时候仍然无法得到它来更新标签。我遗漏了什么?
from os import name
import tkinter
import tkinter.filedialog as fd
from tkinter.constants import W
top = tkinter.Tk()
top.wm_title("NFT Generator")
L1 = tkinter.Label(top, text="Name your nft:")
L1.grid(row
我正在尝试使用Tkinter创建一个Python。我首先创建一个窗口,以按钮的形式向用户显示选项。单击按钮时,我调用一个函数来创建一个带有Toplevel()函数的新窗口。在新的窗口里,我有一个按钮和一个标签。通过单击按钮,我希望更改标签的文本。然而,我得到了一个关于标签范围的错误。下面是代码概念的一个示例:
import tkinter as tk
# function called by popWin()
def func():
global win_lbl # declaring label as global so that I can edit its text
摘要:在Python中,当我从派生进程更新Tkinter label文本时,GUI上的标签不会被更新,尽管生成的进程被执行。如何使它从生成的过程中更新?
我正在Lubuntu 20.04中使用Python2.7.2
编辑:我也尝试了Python3.8,不得不额外安装python3-tk,更改一些语法(在print命令后插入括号,用Tkinter替换tkinter),但问题仍然相同。端编辑
下面是独立运行的示例代码:
from Tkinter import *
from multiprocessing import Process
# simple Label change invoked f
我正在开发一个python/tkinter标签小部件来更新它的内容。根据今天早些时候的一个线程,我遵循了如何将小部件组合在一起的说明。但是,在运行时,label小部件不会更改内容,而只是保留其原始内容。据我所知,从来没有调用过decrement_widget()。有什么想法吗?
def snooze (secs):
"""
Snoozes for the given number of seconds. During the snooze, a progress
dialog is launched notifying the
""
您好,我正在使用gui的tkinter在python中编写简单的输入速度测试,但我遇到了一个问题。我希望标签中的文本每次用户在entry小工具中输入第十个句子时都会发生变化,但当我在标签中写入第十个句子时,标签中的文本会发生变化,例如,当这个单词有5个字母时,文本会发生5次变化。我知道为什么它是半边的,但我不知道如何修复它。谢谢。 import tkinter as tk
from tkinter.constants import END
import tkinter.font as font
import random, sys
start = False
# configure tk
我为Tkinter按钮设置的命令是一个更改标签文本的函数。然而,文本似乎并没有改变!
我试图使用函数"textChange()“更改的变量称为" text ",其值的目的是作为一个名为"finalText”的标签的文本。但是,标签"finalText“的文字并没有改变!
#Imports
from tkinter import *
#Variables
wn = Tk()
text = 'Button Commands'
#Change Text
def textChange():
global variable
text
通过将服务器的根实例传递给tkinter窗口,我正在为python服务器提供一个带有Tkinter的GUI。问题在于使标签中的信息保持最新。
例如,服务器有一个用户列表,其中包含已登录的用户。对于初始列表,执行此操作非常简单:
string = ""
for user in self.server.Users:
string += user + "\n"
Label(master, text=string)
但这只会做一次。在那之后,我该如何更新列表呢?我可以添加一个‘更新用户’按钮,但我需要列表是自我更新的。
我是python的新手,我正在尝试为自己做一个小项目,但我不知道如何在stop函数中使用start函数中的初始时间变量,在那里我可以用它来做数学运算。这是我目前的代码:
import time
import Tkinter
import tkMessageBox
top = Tkinter.Tk()
def start_time():
tkMessageBox.showinfo("Timer", "The timer will now begin")
initial = time.time()
return initial
def sto
我试图使用Python的Anaconda最新发行版(3.8.3)在Ubuntu20.04LTS上运行这段代码。
from tkinter import *
root = Tk() # THIS IS THE LINE CAUSING THE ERROR
label = Label(root, text='Hello World!')
label.pack()
root.mainloop()
当我运行这个程序时,我会得到以下错误:
self.tk = _tkinter.create(screenName, baseName, className, interactive,
看一看这段代码,它恰好无缘无故地添加了另一个标签。
import tkinter
from tkinter import *
clicks = 1
def click_count():
global clicks
# making the label that shows how many idk you have
label = Label(frame, text="you have " + str(clicks), font=(('Courrier'), 32))
label.pack()
clicks += 1
我正在学习如何在Python中使用tkinter模块,但是当我在本地运行它时,我会得到以下错误:
Traceback (most recent call last):
File "emailer", line 1, in <module>
from tkinter import messagebox
ImportError: No module named tkinter
我尝试了pip install tkinter和sudo pip install tkinter,它们引发了以下错误:
Could not find a version that sa
我有一个带有Tkinter的python脚本,它在Windows和Ubuntu上都能很好地工作。我可以在Windows上成功地用cx_Freeze冻结它。但是,当我冻结Ubuntu22.04LTS上的脚本时,可执行文件无法加载Tkinter:
Traceback (most recent call last):
File "/home/slarag/env/lib/python3.10/site-packages/cx_Freeze/initscripts/__startup__.py", line 120, in run
module_init.run(name