ATLを使わないWTLもどき
ツイート正式名称: Natsuhaze Windows Class Library
このライブラリはWindowsのユーザーインターフェイス開発用C++クラスライブラリです。
(ダイアログ、プロパティシートのみ)
フリーソフトです。(vectorもどきを内部で使っています)。WTLのコードを一部拝借しています。といっても著作権を主張するにはあまりも自明なWin32コントロールクラスのメンバ関数のみです。
WTLのライセンスが難解なのですが多分商利用も問題ないでしょう。著作権がらみで問題と思われる方は、WTLのメンバー関数を使うのではなく、Winodws SDK(ヘッダファイル)にある、Windowsのコントロール制御マクロを使えばいいですが、1~2行程度のものばかりなので内容は実質同じものでしょう。
一応お決まりの言葉ですが、どんな使い方をしても構いませんが使用したことによる損害は補償しません。無保証です。
ダウンロードは右側の「ダウンロード」の中のNatsuhaze Windows Class Libraryをクリックしてください。
一応サンプルプロジェクトがありますので。MFCとWTLに手馴れた人なら比較的容易に理解できるでしょう。
ツリービュー、タブコントロールのサンプルも書こうとしたのですが、面倒なのでやめました(笑)
概要、使い方も同じくその下にあります。
WTLでWindowsのGUIを開発する際、ATLが必須なのですが、このバージョンが低いと最近のVisualStudio Expressでビルドできない。結局WTLを使うと製品版のVisualC++を買う羽目になるのですが、それだとMFCも使えてしまうし、要するに余計なものに金を払うことになるし、余計なものをインストールする羽目になる。間尺に合わないので、その場限りのGUIコードを書くのも後々のことを考えると時間も保守も結局かかるだろう..ということでライブラリを作ることにしました。
とはいってもダイアログ(プロパティシート含む)のみ。でも私はGUIといえばこればっかりですからね。フレームウィンドウのクラス化もやってもいいのですが、必要なときにやりましょう。
これを使えばWTLにもMicrosoftにも左右されない!
でもWin32コントロールは廃れる運命だから時間を追うごとに意味がなくなるライブラリでしょう。C++でちょっとしたGUIを作りたいときに重宝するんじゃないでしょうか?
でも、わざわざこんな半完成品のライブラリを使う人がいるのでしょうか?
でもデータ交換変数はMFCより優れていると勝手に自負しています(笑)。結構苦労したんだ。プロパティシートのクラス化でも苦労した。
半完成品でもカスタマイズは容易なレベルには達しているとは思います。
使う人は一応WTLとMFCに手馴れた人だと思うので、今回はたいした完成度を上げなくてアップロードしました。
これだけに付き合っていたら時間がもったいないので。
Posted: 2012 年 7月 15 日, カテゴリー Nwcl.