代码之家  ›  专栏  ›  技术社区  ›  Claudiu

gtk:为什么gtk::Main::迭代?

  •  1
  • Claudiu  · 技术社区  · 14 年前

    Gtk::Main::iteration() 在答案的最后两行 this question ? 我在用pygtk,所以同样的问题是,为什么 gtk.main_iteration_do() ? 运行的主循环不是已经处理好了吗?

    2 回复  |  直到 7 年前
        1
  •  3
  •   ptomato    14 年前

    当我写下这个答案时,我假设这些项将被添加到一个长循环中——例如在某个地方的回调中。除非您在单独的线程中显式地执行该工作,否则主循环实际上不会在该代码期间运行。那里的代码告诉窗口滚动到底部,但滚动实际上只在主循环重新获得控制时发生。

        2
  •  2
  •   salezica    14 年前

    这些函数允许您创建自己的循环,并在其中运行GTK循环的迭代。

    当循环运行时,您可能需要在与循环相同的线程/进程中处理其他事情。许多带有主循环的库提供了在其主循环中调度任务的方法,或者提供了一个函数来运行循环的单个迭代,以便您将其嵌入到其他地方。