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

Python-Pygame os.system how to close MAIN file-Pygame screen

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

os.system("filename.exe")

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

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

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

How can I fix this? When that special .exe file opened, close the Pygame screen?

os.system wait the program terminate; the next line pygame.quit will not executed until the termination of the process. Instead of os.system, you can use subprocess.Popen 不等待程序终止(或任何其他不等待进程终止的功能):

import subprocess

....


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