我为一个应用程序制作了一个简单的PyGTK-Glade GUI.我创建了按钮,on_button_click调用了一个bash脚本.
我想在bash脚本运行时显示一个弹出窗口,并在完成后隐藏它.我在Glade中创建了名为runningWindow的窗口,并编写了以下代码:
def on_button1_clicked(self,widget):
self.glade.get_object("runningWindow").show()
os.system('bash run.sh')
self.glade.get_object("runningWindow").hide()
run.sh运行时,此代码不显示任何内容.如果我删除了hide()行,则窗口会正确显示,但仅在run.sh进程完成后才会显示.
启动GUI的init函数:
def __init__(self):
self.gladefile = "MyFile.glade"
self.glade = gtk.Builder()
self.glade.add_from_file(self.gladefile)
self.glade.connect_signals(self)
self.glade.get_object("MainWindow").show_all()
如何在调用os.system之前显示窗口?
谢谢您的帮助!
解决方法:
您可能希望查看子进程模块,并在后台任务中运行子进程.
标签:python,user-interface,glade
来源: https://codeday.me/bug/20190709/1412813.html