首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >更新tkinter标签

更新tkinter标签
EN

Stack Overflow用户
提问于 2021-02-11 17:45:13
回答 2查看 66关注 0票数 1

为什么变量AnswerQuestionPageText2Variable不会更新?我已经尝试过mainloopconfigureset,但都没什么变化。我想让它在每次按下MainMenuButton1Command (开始按钮)时从列表TrueQuestions中随机选择一个问题。

代码语言:javascript
运行
复制
#imports
from tkinter import *
from tkinter.font import *
import random
#lists
TrueQuestions = [
    'true question 1',
    'true question 2',
    'true question 3',]
current_question = random.choice(TrueQuestions)
#command defines
def MainMenuButton1Command():
    MainMenu.withdraw()
    AnswerQuestionPage.deiconify()
    #attempting to update AnswerQuestionPageText2Variable when start button pressed
    current_question = random.choice(TrueQuestions)
    AnswerQuestionPageText2Variable.set(current_question)
def MainMenuButton5Command():
    quit()
def AnswerQuestionPageButton1Command():
    AnswerQuestionPage.withdraw()
    MainMenu.deiconify()
#MainMenu
MainMenu = Tk()
MainMenu.attributes("-fullscreen", True)
MainMenu.title("IQ extreme Main Menu")
MainMenu.configure(bg="blue")
BigFont = Font(family="Tahoma",size=48,weight="bold")
SmallFont = Font(family="Tahoma",size=24)
TinyFont = Font(family="Tahoma",size=18)
MainMenuButton1 = Button(MainMenu,bg="white",fg="black",font=TinyFont,text="Start",width=20,command=MainMenuButton1Command)
MainMenuButton1.place(x=525,y=400)
MainMenuButton5 = Button(MainMenu,bg="red",fg="black",font=TinyFont,text="Quit",width=5,command=MainMenuButton5Command)
MainMenuButton5.place(x=1200,y=950)
#AnswerQuestionPage
AnswerQuestionPage = Tk()
AnswerQuestionPage.withdraw()
BigFont = Font(AnswerQuestionPage,family="Tahoma",size=48,weight="bold")
SmallFont = Font(AnswerQuestionPage,family="Tahoma",size=24)
TinyFont = Font(AnswerQuestionPage,family="Tahoma",size=18)
AnswerQuestionPage.attributes("-fullscreen", True)
AnswerQuestionPage.title("IQ extreme")
AnswerQuestionPage.configure(bg="blue")
AnswerQuestionPageText2Variable = StringVar()
AnswerQuestionPageText2Variable.set(current_question)
AnswerQuestionPageText2 = Label(AnswerQuestionPage,bg="blue",fg="black",font=BigFont,text="Question: "+str(current_question))
AnswerQuestionPageText2.place(x=350,y=50)
AnswerQuestionPageButton1 = Button(AnswerQuestionPage,bg="white",fg="black",font=TinyFont,text="Home",width=5,command=AnswerQuestionPageButton1Command)
AnswerQuestionPageButton1.place(x=1205,y=5)

任何帮助都是最好的。谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-02-12 00:15:18

在这里你可以看到textvariable的工作代码:

代码语言:javascript
运行
复制
from tkinter import *
from tkinter.font import *
import random
# lists
TrueQuestions = [
    'true question 1',
    'true question 2',
    'true question 3', ]
current_question = random.choice(TrueQuestions)
AnswerQuestionPage = Tk()
BigFont = Font(AnswerQuestionPage, family="Tahoma", size=48, weight="bold")
SmallFont = Font(AnswerQuestionPage, family="Tahoma", size=24)
TinyFont = Font(AnswerQuestionPage, family="Tahoma", size=18)
AnswerQuestionPage.attributes("-fullscreen", True)
AnswerQuestionPage.title("IQ extreme")
AnswerQuestionPage.configure(bg="blue")
AnswerQuestionPageText2Variable = StringVar()
AnswerQuestionPageText2Variable.set(current_question)
AnswerQuestionPageText2 = Label(AnswerQuestionPage,
                                bg="blue",
                                fg="black",
                                font=BigFont,
                                textvariable=AnswerQuestionPageText2Variable)
AnswerQuestionPageText2.place(x=350, y=50)
AnswerQuestionPage.mainloop()
票数 2
EN

Stack Overflow用户

发布于 2021-02-11 22:11:44

您必须对AnswerQuestionPageText2 Label说,才能将AnswerQuestionPageText2Variable与:Label(textvariable=AnswerQuestionPageText2Variable, ...)一起使用

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66152223

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档