当前位置: 首页 > 知识库问答 >
问题:

tkinter的main()函数实际上是一个循环吗?[重复]

归翔
2023-03-14

谢谢你耐心地回答另一个新手问题。我正在学习tkinter,对mainloop()感到困惑。什么是循环?例如:

import tkinter as tk
class Test(tk.Frame):
    def __init__(self, master=None):
        super().__init__(master)
        self.master = master
        self.pack()
        self.create_widgets()
        x = 2
        x += 1
        print(x)
    def create_widgets(self):
        y = 1
        y += 1
        print(y)


root = tk.Tk()
app = Test(master=root)
app.mainloop()

如果这个程序循环通过类测试(或任何一个函数),我的控制台应该继续打印递增的x和y值。当然不是。它只打印x和y一次。

谢谢你的帮助!

共有1个答案

潘翊歌
2023-03-14

我对主循环()感到困惑。到底什么是循环?

main循环循环遍历该队列,删除项目并执行绑定到事件的函数。

如果这个程序在类测试中循环。。。

它不会在代码中循环。有一个不断更新的内部事件列表<代码>主循环在该列表上循环。它不会在代码上循环。

 类似资料:
  • 这些文本文件包含数行,每行16个数字。预演 我不明白!这些应该是图像(像素值的矩阵)吗? 代表链接:https://github.com/Kurispy/neuralnet

  • 问题内容: 我有以下代码: 这里的主要循环是: 但是我不确定这是做到这一点的最佳方法(如果我想输入一些信息,这将不起作用) 然后我尝试了这个: 但是,正如我已经意识到的那样,它并没有达到我的预期。所以问题是:创建主循环的最佳方法是什么? 问题答案: Tkinter为此提供了一个强大的工具,它被称为after。它旨在用作同步睡眠命令,但可以通过调用自身在mainloop内建立一个循环。 之后,是一个

  • 我想为数组中的每个项目运行一个函数。数组每次都不同,但为此我将只使用一个示例数组。它一直在说未定义的不是一个函数,我假设未定义的是未来的函数。解决这个问题的办法是什么?

  • 在js中,当在forEach函数中遍历arrayitems时,我遇到了一个问题。我只是有一个ID数组,其中一些ID不到10个字符,我想在开头用“0”填充这些字符。示例:在这种情况下,我想用填充最后一项。当然,它也可以在各种其他方式,但我只是不明白为什么它不起作用。 下面是我的代码:

  • 下面AtomicBigInteger实现的方法是原子操作吗?我特别想知道部分。JVM是否以某种方式保证for循环中的每个循环都是原子式执行的? 我从这里得到了这段代码:是否可以以线程安全的方式安全地递增BigInteger,也许可以使用AtomicReference,W/O锁定?然而,这个实现正在进行中,您可以在Internet上的许多不同地方找到它。

  • 我下面有这个功能,我在某处做错了什么。 要运行,从程序的主要部分调用函数,如下所示: 代码底部的返回False与如果product为None有关,这是在另一个函数中编写了一些代码之后需要的,但在这个函数中必须执行。 如果用户输入的数量是一个数字,所有工作正常。如果是其他任何东西,则打印值错误,您可以输入另一个输入。如果你把另一个字母etc放进去,它就会重复一遍,如果你把一个数字放进去,它就会接受它