2

メイン アプリケーションのプロセスを生成するプログラムを作成しました。pyinstaller パッケージ化された exe を実行すると、no Module name pygame.base. しかし、アプリをメインスレッドに保持すると、それは行われません。

GLUTには右上の終了ボタンのイベントがなく、フルスクリーンを使用しない限り削除できないため、閉鎖を検出するプロセスが必要です。プログラムのスレッドがハングし、アプリが閉じられません。そのため、メイン スレッドは、プロセスが実行されているかどうかを確認します。そうでない場合は、アプリケーション全体を閉じます。しかし、メインスレッドのみを使用すると、すべてのクロージャーがハングします。

ゲーム内イベントを問題なく終了できます。しかし、X ボタンをキャッチする方法が必要です。または、pyinstaller を修正します。

私は pyinstaller にすべてを含めるようにするために、たくさんのものを調べました。ファイルを表示できるように、OneDir オプションを使用しました。exeを置き換えずに、機能するものから機能しないものにすべての依存関係をコピーしました。まだインポートエラーがありました。

どんな洞察もいいでしょう。今のところ、X ボタンはハザードです。multiprocessing は pyinstaller ではうまく機能しないと思います。

4

1 に答える 1

0

event.type == pygame.QUITWindowsの場合、[x] ボタンが作動します。

于 2012-10-14T19:59:28.150 に答える