wvogel日記

自分用の技術備忘録が多めです.

GUI入門 with F#

F#は、.Netを標準で使えるわけだから、
もしかしてGUIアプリ作るの簡単なんじゃないか?
と思った。
今までC/C++,Haskellと、GUI作成に関しては面倒なイメージしかない言語ばかり触ってきたので余計に.Netは気になる.....


やってみた。
visual studioを起動
②[プロジェクト] -> [参照の追加]
-> [Add tab] -> System.Windows.Forms をインポート

まずはwindow表示

let form = new Form(Text = "test")
form.Show()

Application.Run(form)

ほおほお。
リサイズもできる!

では続いて、プログラミングF#を参考にしてボタンを書いてみます

open System.Windows.Forms

let form = new Form(Text = "ボタンテスト")
let btn = new Button(Text = "OK")
btn.Click.AddHandler(fun _ _ -> MessageBox.Show("動作確認") |> ignore)

form.Controls.Add(btn)

form.ShowDialog()

実行結果

Formを生成するとき、引数に
Height = y, Width = x
を追加してやればwindowの大きさも指定可能です。


因みに、上のソースコードを実行すると、毎回コンソールウィンドウが表示されます。
これを表示じないようにするには、私の環境では、
[プロジェクト] -> [プロジェクト名]のプロパティ
-> Application -> Output typeを"Windows Application"に変更
で解決しました。

なるほど。
これは簡単にGUIが作れそう?