gtk在执行任务时加载对话框

时间:2012-12-02 18:24:55

标签: python gtk

基本上我想这样做:

当用户按下按钮时,应用程序应打开一个内部带有微调器的对话框,而某些任务则在后台执行。完成此任务后,应该销毁此对话框,并打开一个新对话框。

我正在使用python和gtk

我该怎么办? 谢谢!

1 个答案:

答案 0 :(得分:2)

基本上有两种方法。不同之处在于谁是“主要”计划。如果你想让gtk负责,你只需创建对话框,并设置一个回调以便在空闲时使用(gobject.idle_add)。这项工作应确保每一步都不会花费很长时间,因此gtk可以更新gui(您可能希望为您的微调器gobject.timeout_add。)

另一种方式是你的“背景”工作在掌控之中。它可以做它想要的,它应该不时地调用gtk(while gtk.events_pending (): gtk.main_iteration (False))以确保gtk可以更新gui。