すぐ忘れてしまうのでメモ.GUI デザイン部分は ResEdit Resource Editor を使用する事を想定しています.
- ダイアログ上に Edit Control と Spin Control を作成する.
- Dialog → Tab order wizard で Spin Control を取り付ける Edit Control のタブオーダーを Spin Control の直前にする(初期設定だと Spin Control の ID は表示されないので,Display all controls にチェックを入れる).
- Edit Control の Behavior → Read Only を TRUE に変更する(スピンコントロールによる操作のみで,ユーザに直接,数値を入力させたくない場合).
- Spin Control の Behavior → Set Buddy Integer を TRUE に変更する.
- Spin Control の Appearance → Alignment を 右 に変更する.
- Spin Control の Behavior → Auto Buddy を TRUE に変更する.
これで,取りあえずスピンコントロールを使用できるようになりました.
その他,よく使用するメッセージを列挙.
HWND spin = GetDlgItem(hWnd, IDC_SPINCONTROL1); SendMessage(spin, UDM_SETRANGE, 0, MAKELONG(max, min)); // 指定できる範囲を設定 SendMessage(spin, UDM_SETPOS, 0, MAKELONG(value, 0)); // 表示する値を設定 SendMessage(spin, UDM_GETPOS, 0, 0); // 現在表示されている値を取得