Python-Pygame os.system如何关闭MAIN文件-Pygame屏幕

时间:2015-01-03 04:08:38

标签: python python-3.x operating-system pygame python-3.4

我正在制作一款带有一些按钮的Pygame游戏,当触摸一个特殊按钮时,它会打开另一个.exe文件。我是这样做的;

os.system("filename.exe")

但Pygame屏幕保持在后台,我想在用户点击该按钮并打开该.exe文件时关闭该屏幕。我试过了;

#codes
...
...
if action == "play":
    os.system("filename.exe")
    pygame.quit()
    quit()

理论上它应该是工作,打开.exe文件然后从Pygame退出。但是这不起作用,.exe文件成功打开但是Pygame屏幕仍然停留在后台,如果我触摸它,则提示错误 Pygame停止工作。

  

我该如何解决这个问题?当该特殊.exe文件打开时,关闭   Pygame屏幕?

1 个答案:

答案 0 :(得分:0)

os.system等待程序终止;在流程终止之前,下一行pygame.quit将不会执行。您可以使用不等待程序终止的subprocess.Popen(或不等待进程终止的任何其他功能)而不是os.system

import subprocess

....


if action == "play":
    subprocess.Popen(["filename.exe"])
    pygame.quit()
    quit()