|
僕が独自に機能拡張したコマンドボタンコントロール第2弾です。
ソース自体は新たに書き直しています。
今回は、標準のコマンドボタンコントロールが持っているほとんどの機能を盛り込みました。
標準のコマンドボタンに対して拡張・修正された機能をあげてみます。
- フォーカス枠の表示有無
- 通常時、クリック時、無効時、選択時のピクチャを任意に指定
- ピクチャ、キャプション文字列を任意に配置
- オーナードロー機能のサポート
- Styleプロパティの設定のみでチェックボックスやオプションボタンに
いろいろな設定を行った例をいくつかあげておきます。
フラットスタイル |
通常スタイル(フォーカス有/無) |
キャプションの位置 |
ピクチャ付きボタン |
オーナードロー |
イベント
標準のコマンドボタンと同等のイベントの一覧
追加・修正されているイベントの一覧
|
Click ( Button , Shift , X , Y ) ボタン上でクリックされたときに発生します。 |
|
|
MouseIn ( Button , Shift , X , Y ) ボタンにマウスカーソルが重なった時に発生します。 |
|
|
MouseOut ( Button , Shift , X , Y ) ボタンからマウスカーソルが外れた時に発生します。 |
|
|
OwnerDraw ( ) コントロールの再描画が必要になった時に呼び出されます。 |
|
|
プロパティ
標準のコマンドボタンと同等のプロパティの一覧
追加・修正されているプロパティの一覧
|
wkButtonControl .Appearance { =Value } |
|
3D表示/フラット表示の指定をします。 以下の値が使用可能です。
- wbaFlat
フラット形式で表示します。IEのツールバーなどと同じ表示になります。 - wba3D
3D形式で表示します。通常のコマンドボタンと同じ表示になります。
|
|
|
wkButtonControl .CaptionAlign { =Value } |
|
キャプションの表示位置を指定します。 以下の値が使用可能です。
- wbcTopLeft
左上隅に配置します。 - wbcTopCenter
上端中央に配置します。 - wbcTopRight
右上隅に配置します。 - wbcLeft
左端中央に配置します。 - wbcCenter
中央に配置します。通常のコマンドボタンと同じ表示になります。 - wbcRight
右端中央に配置します。 - wbcBottomLeft
左下隅に配置します。 - wbcBottomCenter
下端中央に配置します。 - wbcBottomRight
右下隅に配置します。
|
|
|
wkButtonControl .DisablePicture { = Value } |
|
|
|
wkButtonControl .DownPicture { = Value } |
|
ボタンが押されている時に表示するピクチャを指定します。 |
|
|
wkButtonControl .FocusRectMargin { = Value } |
|
フォーカスがあることを示す矩形の、コントロールの端からの距離を指定します。 |
|
|
wkButtonControl .OwnerDraw { = Value } |
|
OwnerDrawイベントの発生/コントロールの再描画を行うかどうかを指定します。 以下の値が使用可能です。
- True
OwnerDrawイベントを発生させ、コントロールは自動で再描画を行いません。 - False
コントロールが自動的に再描画を行います。通常のコマンドボタンと同じ動作です。
|
|
|
wkButtonControl .PictureAlign { = Value } |
|
ピクチャの表示位置を指定します。 以下の値が使用可能です。
- wbpTopLeft
左上隅に配置します。 - wbpTopCenter
上端中央に配置します。 - wbpTopRight
右上隅に配置します。 - wbpLeft
左端中央に配置します。 - wbpCenter
中央に配置します。 - wbpRight
右端中央に配置します。 - wbpBottomLeft
左下隅に配置します。 - wbpBottomCenter
下端中央に配置します。 - wbpBottomRight
右下隅に配置します。 - wbpCaptionTop
キャプション文字列の上に配置します。 - wbpCaptionLeft
キャプション文字列の左に配置します。 - wbpCaptionRight
キャプション文字列の右に配置します。 - wbpCaptionBottom
キャプション文字列の下に配置します。通常のコマンドボタンと同じ動作です。
|
|
|
wkButtonControl .SelectPicture { = Value } |
|
ボタンが選択状態(マウスカーソルがボタンの上にある状態)の時に表示するピクチャを指定します。 |
|
|
wkButtonControl .ShowFocusRect { = Value } |
|
フォーカスがあることを示す矩形を表示するかどうかを指定します。 以下の値が使用可能です。
- True
矩形を表示します。 - False
矩形を表示しません。
|
|
|
wkButtonControl .Style { = Value } |
|
動作のスタイルを指定します。 以下の値が使用可能です。
- wbbButton
コマンドボタンスタイル - wbbCheck
チェックボックススタイル - wbbOption
オプションボタンスタイル
|
|
|
wkButtonControl .Value { = Value } |
|
ボタンのOn/Off状態を指定します。Styleでチェックボックスタイプ、オプションボタンタイプに指定されている場合のみ、有効です。 以下の値が使用可能です。
- wbvOff
オフの状態です。 - wbvOn
オンの状態です。
|
|
|
メソッド
標準のコマンドボタンと同等のメソッドの一覧
追加・修正されているメソッドの一覧
|
|
wkButton2コントロールのバージョン情報を表示します。 |
|
|
wkButtonControl .Box ( {Left} {, Top} {, Right} {, Bottom} {, Color} ) |
|
|
Left | 矩形の左座標を指定します。省略可能です。 |
Top | 矩形の上座標を指定します。省略可能です。 |
Right | 矩形の右座標を指定します。省略可能です。 |
Bottom | 矩形の下座標を指定します。省略可能です。 |
Color | 描画する線の色を指定します。省略可能です。 |
|
|
|
wkButtonControl .BoxFill ( {Left} {, Top} {, Right} {, Bottom} {, Color} ) |
|
|
Left | 矩形の左座標を指定します。省略可能です。 |
Top | 矩形の上座標を指定します。省略可能です。 |
Right | 矩形の右座標を指定します。省略可能です。 |
Bottom | 矩形の下座標を指定します。省略可能です。 |
Color | 描画する線の色を指定します。省略可能です。 |
|
|
|
|
|
|
wkButtonControl .DrawDefaultBorder ( {State} ) |
|
wkButton2コントロール標準の枠線描画ルーチンを呼び出します。 |
|
State | 枠線の種類を指定します。省略可能です。- wbsNormal
通常状態の枠線 - wbsPush
ボタンが押されている状態の枠線 - wbsSelect
ボタンが選択状態の枠線
|
|
|
|
wkButtonControl .DrawDefaultCaption ( {State} ) |
|
wkButton2コントロール標準のキャプション描画ルーチンを呼び出します。 |
|
State | キャプションの種類を指定します。省略可能です。- wbsNormal
通常状態の枠線 - wbsPush
ボタンが押されている状態の枠線 - wbsSelect
ボタンが選択状態の枠線
|
|
|
|
wkButtonControl .DrawDefaultPicture ( {State} ) |
|
wkButton2コントロール標準のピクチャ描画ルーチンを呼び出します。 |
|
State | ピクチャの種類を指定します。省略可能です。- wbsNormal
通常状態の枠線 - wbsPush
ボタンが押されている状態の枠線 - wbsSelect
ボタンが選択状態の枠線
|
|
|
|
wkButtonControl .LineEx ( {X1} {, Y1} {, X2} {, Y2} {, Color} ) |
|
|
X1 | 始点の左座標を指定します。省略可能です。 |
Y1 | 始点の上座標を指定します。省略可能です。 |
X2 | 終点の右座標を指定します。省略可能です。 |
Y2 | 終点の下座標を指定します。省略可能です。 |
Color | 描画する線の色を指定します。省略可能です。 |
|
|
|
wkButtonControl .PaintPicture ( oSrcPicture {, nDstPosX} {, nDstPosY} , {, nDstSizeWidth} {, nDstSizeHeight} {, nSrcPosX} {, nSrcPosY} {, nSrcSizeWidth} {, nSrcSizeHeight} {, nOpCode} ) |
|
|
oSrcPicture | 描画するピクチャを指定します。 |
nDstPosX | 描画先の基準点座標(X座標)を指定します。省略可能です。 |
nDstPosY | 描画先の基準点座標(Y座標)を指定します。省略可能です。 |
nDstSizeWidth | 描画時の幅を指定します。省略可能です。 |
nDstSizeHeight | 描画時の高さを指定します。省略可能です。 |
nSrcPosX | 描画元の基準点座標(X座標)を指定します。省略可能です。 |
nSrcPosY | 描画元の基準点座標(Y座標)を指定します。省略可能です。 |
nSrcSizeWidth | 描画元の幅を指定します。省略可能です。 |
nSrcSizeHeight | 描画元の高さを指定します。省略可能です。 |
nOpCode | 描画時の転送パターンを指定します。省略可能です。 |
|
|
|
wkButtonControl .PSetEx ( {nPosX} {, nPosY} {, nColor} ) |
|
|
nPosX | 描画する座標(X座標)を指定します。省略可能です。 |
nPosY | 描画する座標(Y座標)を指定します。省略可能です。 |
nColor | 描画する色を指定します。省略可能です。 |
|
|
|
より詳しい内容等については、コントロールに付属のヘルプファイルを参照して下さい。
今回の Tips で紹介したこのコントロールが下でダウンロードできます。
サンプルにはコントロールは含まれていません。サンプルをダウンロードする場合はコントロールも一緒にダウンロードしてください。
|
|