2

Linux で実行して常にフルスクリーンで実行するアプリケーションを開発しています (メニューやトレイなどは表示されません)。

アプリケーションは Python で開発される予定で、ウィンドウ マネージャーに関してはそれほど重要ではありませんが、私が苦労しているのはウィンドウ マネージャーの選択です。

グラフィカルな Python アプリを実行し、同時にワイドスクリーンの解像度 (ワイドスクリーン、16:10、16:9 など) で mplayer ウィンドウを表示できる、可能な限り最小のフットプリントを持つものが必要です。それ以外には多くの機能は必要ありませんが、エンド フットプリントのサイズが最も重要です。

どのウィンドウマネージャをお勧めしますか?

編集:必要なアプリケーションとのやり取りはありません。

4

5 に答える 5

1

実際には、ウィンドウマネージャーやディスプレイマネージャーは必要ありません。ルートウィンドウと同じジオメトリで初期ウィンドウを開くだけです。必要に応じて、ルートウィンドウに直接描画することもできると思います。

ディスプレイライブラリを使用している場合は、おそらくフルスクリーンウィンドウを開く簡単な方法があります。たとえば、pygameを介してSDLの最新バージョンを使用すると、次のことができます。

pygame.display.init()
surface = pygame.display.set_mode((0,0),pygame.FULLSCREEN,0)

画面全体に表示されるウィンドウを取得します。これは、ウィンドウマネージャーが実行されていない場合でも機能します。

-geometrymplayerはフラグを受け入れるのでmplayer -geometry 640x480+20+20、たとえば、mplayerウィンドウを上から20ピクセル、左から20ピクセル、サイズは640x480ピクセルで表示できます。

于 2010-06-09T20:50:42.290 に答える
1

「セットトップボックス」で同様のことを行っていますが、ウィンドウマネージャーは使用していません。

Debian を起動し、inittab から、ディスプレイを実行しているユーザーを自動ログインします。そのユーザーの .profile は X を起動し、.xinitrc を実行し、mplayer の前でネットワーク サーバーとして実行される Python アプリを起動します (mplayer を -slave モードで実行します)。

私の python アプリには GUI 要素がありません。mplayer のみが X ディスプレイで実行されます。しかし、あなたの場合、それは変わらないはずです。別の回答へのコメントで述べたように、mplayer のウィンドウの親を変更して、その配置や移動/サイズをより詳細に制御する方法を検討することをお勧めします。

このようにすることで、ディスプレイマネージャーとウィンドウマネージャーを回避しました。これにより、ソリューションが簡素化され、起動が速くなり、使用するフットプリントが小さくなります (SD カードで実行され、十分なスペースがあります)。

于 2010-06-10T06:28:29.217 に答える
1

Python GUI と mplayer の両方をある種のジオメトリの組み合わせで実行すると、両方が同時に表示され、画面がいっぱいになると思います。

コメントしたように、それを実現するためにウィンドウマネージャーは必要ありません。ウィンドウ ジオメトリを設定するためのコマンド ライン パラメーターを Python GUI アプリに取得させ、-geometry パラメーターを指定してフルスクリーン mplayer を呼び出すこともできます。ウィンドウの装飾なしで、期待どおりに画面がいっぱいになるはずです。

これで、すべてを実行しているユーザーに対して startx スクリプトを呼び出し、カスタムの ~/.xinitrc スクリプトを次のように実行できます。

#!/bin/sh

exec python my_gui_app --whatever-sets-geom &
exec mplayer -fs video.avi

代わりに pyhon アプリが mplayer を起動する場合は、最初の「exex」呼び出しをそのままにして (「&」を削除)、必要に応じて「-fs」モードで予想されるサイズで mplayer を呼び出します。

「xset」プログラムのようなものを使用して、エネルギー節約のためにモニターのブランキングを無効にしたり、カーソルを隠したりする必要があるかもしれないことに注意してください (IIRC は mplayer が独自のウィンドウに対して行うものですが)。

また、たとえば、裸の X ディスプレイで GTK アプリを実行すると、最終的に「醜い」テーマが使用される場合があるため、何らかの方法でツールキット スタイルの構成を処理する必要がある場合があります。

于 2010-06-09T21:42:23.657 に答える
1

あなたはおそらくウィンドウマネージャーを意味していました。表示管理は、KDM、GDM などです。Windoe マネージャーは、名前を挙げると、GNOME、Xfce、KDE、ratpoison、fvwm、twm、blackbox などです。ratpoison は、フォアグラウンドにあるアプリケーションに全画面表示を提供しますが、キーボードの操作が多く (そのため、ratpoison という名前が付けられています)、マウスの操作はまったく必要ありません。

于 2010-06-09T20:30:21.067 に答える
0

これは古い質問だと思いますが、システムでopenboxを使用し、すべてのマウスキーボードショートカットを無効にし、アプリケーションの境界線などを削除するカスタム構成ファイルを作成しました。オープンボックスの設定では、fxを実行できるいくつかの秘密のショートカットも作成しました。ボックスでライブデバッグするためのxterm。

オープンボックスのドキュメントは、すべてを理解するのに非常に役立ちました。設定は約30分で完了しました。

于 2012-02-13T12:54:40.067 に答える