C#メモ Visual Studio for macでMessageBoxを表示してみる

C#

なんと!Visual Studio for mac 2019でSystem.Windows.Formクラスが使えるようになってた…って知らんかっただけ?
とりあえず、簡単なMessageBoxを表示させてみることに。

ポイントはそんなにないけど、こんなんとこ。

  • 参照にSystem.Windows.Formsを追加する
  • System.Windows.Form.MessageBox.Show()メソッドでダイアログを表示する

んで、まずはプロジェクトをこんな感じで作った。

  1. 新規プロジェクトを作成するんだけど、Visual Studioの起動画面で"新規"ってとこをクリックする。
  2. “新しいプロジェクト"って画面が表示されてテンプレートを選んでくれって言ってくるので、テンプレートを選ぶ。

    今回はコンソールでダイアログを表示することにして、"その他/.NET/コンソールプロジェクト"を選択して画面右下の"次へ"ボタンをクリックする。
  3. プロジェクトの構成を教えてくれって言ってくるので、プロジェクト名とソリューション名とプロジェクトのテンプレートファイルを作成する場所を入力する。

    で、画面右下の"作成"ボタンをクリックする。
  4. Visual Studioのメイン画面が表示されたらプロジェクトの作成はおしまい。

次はプロジェクトの設定をする。

  1. 画面の右側にあるソリューションエクスプローラにある"参照"って項目をクリックして…

    続けて、右クリックして表示されたメニューから"参照を編集"ってのをクリックする。
  2. “参照を編集"って画面が表示されるので、画面真ん中にあるリストの中から"System.Windows.Forms"って項目のチェックを入れる。

    で、画面右下の"OK"ボタンをクリックする。

    メイン画面に戻るんだけど、ソリューションエクスプローラの参照ってとこに"System.Windows.Forms"って項目が表示されれば参照の追加ができたってことになる。

んで、コードを書く。
Program.csってコードを編集するんだけど、内容はこんなん。

using System;

namespace Proto
{
    class MainClass
    {
        public static void Main(string[] args)
        {
            System.Windows.Forms.MessageBox.Show("dialog message", "information", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Information);
        }
    }
}

で、実行してみるとこんなん。
とりあえず、コンソールは表示される。

んで、メッセージボックスが表示される。
おぉぉぉぉぉ…マヂで表示されるぅぅぅぅぅぅ!
macOSのAlertな見た目にはならないみたいだけど…直でWindowsのFormsクラスを呼べるっていう今まで出来てなかった事ができるのは嬉しいかも。

OKボタンをクリックするとプログラムが終了する。

ちなみに、日本語でメッセージを表示しようとすると…

こんな感じで本文が文字化けしちゃう…なんでかはまた今度調べることにしよ…。

そんなこんなで、明日への自分へのメモって事で。