画面の解像度を変更するには、クロスプラットフォームの道
-
23-08-2019 - |
質問
任意のクロスプラットフォーム方法(WindowsやLinux、MacOSXのは)画面の解像度を変更することがありますか? Javaのもネット-モノラルどちらもそれを行うことができます。唯一のネイティブAPI呼び出して。画面の解像度を取得するために明確な(管理)の方法がありますが、設定の方法は存在しない:それは非常に奇妙な状況です。この機能は非常に危険や複雑ですか? 他のクロスプラットフォームシステム(オウム、REALbasicのなど)は、これを行うのか?
解決
私はあなたがlibSDLを使用しているかどうかわからないんだけど、これをチェックアウト: http://docs.huihoo.com/sdl/1.2/sdlsetvideomode.htmlする
PSああ、ところで、まだ知らなかった場合、LibSDLは主にゲームを対象としたクロスプラットフォームのライブラリです。 http://www.libsdl.org/する
他のヒント
は、実際に - 画面の解像度を設定すると、OS / X-Serverに依存しています。あなたが本当にそれを必要とし、あなたがしなければ、その後、あなたはOS固有の実装と抽象化レイヤのいくつかの種類を記述する必要がある場合は、それについて考える必要があります。そして、(特に異なるのLinuxフレーバー付き)テスト環境をセットアップすることは地獄になります!
オム、それは本当にプラットフォームに依存します(Win32の、マックOS X、Linuxのすべてが、この異なっ[別のディスプレイドライバ]を行います)。あなたが最初の場所で画面の解像度を変更する必要がある理由あなたは、おそらくあなた自身に尋ねるべきである。
あなたは同じように簡単に代わりの解像度を変更することができ、画面に合わせ(記入)することをスケーリングそして、あなたには、いくつか下画面の解像度で持っているものは何でもコンテンツレンダリングして。それは同じことだ。
これは良い質問です。私はそれをしない任意のクロスプラットフォームシステムを認識していませんよ。私はかつて、自動的に画面の解像度を変更したアプリケーション上で働いていた、と私は再びそれをオーバーしなければならなかった場合、私はそのように設計されていません。ややあなたの足の下に地面を移動するように - それは、解像度を変更するには、ユーザーに破壊的です。 LCDモニターは、これまでで最もよく似合う「自然」の解像度を持っています。あなたはそれから離れて、それを変更した場合、ユーザーは非常にイライラすることがあります。
あなたは解像度を変更できないデバイスがたくさんあります。携帯電話は、例えば*そのうちのいくつかは、Mac OSXまたはLinux)を実行します。しかし、たとえで与えられていない解像度を変更する機能をデスクトップ。あなたは、スーパーユーザーアカウントのいくつかの種類が必要になる場合があります。心の中でこれらの制限で、それはクロスプラットフォームのツールは気にしないことを論理的ようです。