フォーカスの反転はOS固有です。
pygletはOS固有のウィンドウコントロールを提供しません。したがって、ほとんどの場合、迅速で汚いソリューションにはアドホックトリックを使用するか、Windows APIやCOMを使用してpywin32などの拡張機能を使用してアプローチし、タスクバーアプリケーションのスタックを一覧表示してフォーカスの盗用を元に戻す必要があります。コンテキストをpygletに委任するために、最初に独自のウィンドウ(コンテナー-操作可能)を作成することもできます。
焦点の盗みを遅らせる
一方、プログラムロジックに従って、アプリケーションの実際の表示を遅らせたい場合は、可視性で遊ぶことができます。
import pyglet
w = pyglet.window.Window()
w.set_visible(False)
pyglet.app.run()
したがって、ウィンドウコンテキストの委任で遊びたくない場合は、おそらく次のことを行うことができます。
- ウィンドウを表示せずにアプリケーションを起動します
- ハンドル/IDを取得して、現在アクティブなウィンドウのフォーカスを見つけます
- ウィンドウを表示する
- 前のウィンドウにフォーカスを戻す
上記は、WindowsAPIでの作業を前提としています。MSDNにはフォーカス変更の例があったと思います。現在のウィンドウ(メインアプリケーション)のPIDがわかっている場合は、これで手順2が簡略化されます。