私はmonogameとc#を使用してイベントを実装しようとしています。現在、ウィンドウのサイズを変更すると、イベントが呼び出されます。MonoGameウィンドウイベントを最大化する
this.Window.ClientSizeChanged += new EventHandler<EventArgs>(Window_ClientSizeChanged);
void Window_ClientSizeChanged(object sender, EventArgs e)
{
int width = Window.ClientBounds.Width;
int height = Window.ClientBounds.Height;
if (width > 0 && height > 0)
{
graphics.PreferredBackBufferWidth = width;
graphics.PreferredBackBufferHeight = height;
graphics.ApplyChanges();
}
}
これはすべて正常にウィンドウをサイズ変更し、幅と高さを更新します。しかし、ウィンドウ枠の最大化/最小化ボタンをクリックしたときに、ウィンドウのサイズが変更された場合にはトリガされません。最大化イベントを実装するための唯一の提案はhereからだったいくつかのソリューションを検討していくつかの時間を過ごした後
:
Form form = (Form)Control.FromHandle(Window.Handle);
form.WindowState = FormWindowState.Maximized;
それはシステムを含めることに依存しているとして、しかし、これは特に好きではないソリューションのイムです.Windows.Formsと私はある日、他のプラットフォームのidをビルドしたいと思っているので、特定のWindowsライブラリは含まれていません。
各プラットフォームの最大化/最小化イベントコールを処理するモノゲーム機能はありますか?またはエンドユーザーがそのような機能を実装するのは最大ですか?
Windowsフォームは、サポートしたいplattformに応じて、Mono経由で複数のplattformでサポートされていますが、これは問題ではありません。http://www.mono-project.com/docs/gui/winforms/ –