我的编程中有一行用于启动程序的其他实例:
a=subprocess.Popen(__file__)
在linux下它运行正常。
但是在osx下,它并没有像它应该创建一个新窗口(该程序是一个Tkinter程序),但它根本不会给出任何错误。 (我检查 _ 文件 _ 实际上是正在运行的程序的名称,可以执行)
回报是:
> pprint (vars(a))
{'_child_created': True,
'pid': 38865,
'returncode': None,
'stderr': None,
'stdin': None,
'stdout': None,
'universal_newlines': False}
任何提示?
答案 0 :(得分:0)
那里有一个令人尴尬的问题。你知道吗 ?您的窗口只是隐藏在之前创建的另一个窗口后面。
要看到这一点,请将最新创建的窗口显示在第一个窗口的前面,如下所示:
import Tkinter
import subprocess
if __name__ == "__main__":
try:
open('bluh_check')
except IOError:
open('bluh_check', 'w').close()
x = subprocess.Popen(['python', __file__])
print vars(x)
title = 'there'
else:
title = 'hi'
root = Tkinter.Tk()
root.title(title)
root.withdraw()
root.deiconify()
root.mainloop()