D言語 WindowsGUIライブラリ DFL
http://www.dprogramming.com/dfl.php
サンプルをあさっていると、Windowsのウインドウ表示を行うものを見つけた。
ただ、これが非常に古典的かつ低級な書き方(WinProcとかWinMainとか書くやつ)をされているのでちょっと嫌だなあ、と思ったら、ありましたよ、GUIライブラリ。
ちょうど一番新しいものが、さっきインストールしたD言語のバージョンに対応しているとのこと。ごそっと落してくる。
サンプルコードはこんなの。
import dfl.all;
int main()
{
Form myForm;
Label myLabel;
myForm = new Form;
myForm.text = "DFL Example";
myLabel = new Label;
myLabel.text = "Hello, World";
myLabel.size = Size(100, 14);
myLabel.parent = myForm;
Application.run(myForm);
return 0;
}これで、Hello,Worldと書かれたウインドウが一枚ぽんとでる。うん、これくらいシンプルだとまだ手で書く気になりますね。
ライブラリを落としてきたものの、どうやって使うのかいまいちわからなかったが、dflフォルダ*1を、dmd/src/phobos以下にコピーして、dfl.libをdm/lib以下にコピー。オプションにdfl.libをつけるだけでコンパイルが通った。
ライブラリには各コンポーネントのリファレンスHTMLファイルも付属しているので、これを読みながらやれば、なんとかGUIアプリができそうである。
*1:dソースがいろいろはいっている