|目次|前ページ|次ページ| ───────────────────────────────────── 17.チェックボックス(TCheckBox)の使い方 ───────────────────────────────────── [1]チェックボックス(TCheckBox)オブジェクトの作成 →共通ルーチン【ZVCMCKB】 @予期しない値がセットされていないようにローカル変数を削除します[D KILL^ZVCMSUB] Aイベントマスクを設定します、例では[V2EVENT^ZVCMCKB]ですが->適切に設定 Brectパラメタを作成します。[D SETRECT^ZVCMCKB] (x,y,w,h):位置サイズ情報(行桁サイズモードに設定後) (font):コントロールのフオント番号(Fontプロパティ) -->指定なしの場合(null)[font=498]のフオントをセット[SETRECTにおいて] -->0:指定の場合デフォルトのフオント (keycode):キーボードイベントを発生させる終了キーコードのセット -->0を指定した場合0番のキーセットを指定した意味 ※イベントマスク設定でキーボードイベントを有効に設定しないとキーボードイベントは発生しません (その他のプロパティ):(zorder,TabOrder,TabStop)...は必要があれば設定します。 ※[D SETRECT^ZVCMCKB -> rectstrが作成される Cチェックボックスコントロールに表示する文字列をeditパラメタに設定します。[editstr] ※[S editstr="ボタン表示する文字列"] D[D CREATE^ZVCMCKB]で使用されるパラメタを設定する ※[S cid=(1〜1023の一意の番号)] ※[S form=(1〜1023の親フォームのフォーム番号)] ※[S parent=(1〜1023の親コントロールのcid番号)] ※[S group=(0〜32767のグループ番号)] ※[S opt=0:グレー表示不可(AllowGrayed=False) 1:グレー表示可能(AllowGrayed=True) ※[S pm1=0,1:チェックボックスの右側に文字列 2,3:左側に文字列(Alignment) ※[D CREATE^ZVCMCKB]コントロールオブジェクトの作成 Eイベント応答メッセージからチェックボックスが押されたことを感知する ※イベント種別=クリックイベントとォーカスを失う,キーボードイベントで処理します ※イベント応答メッセージを読み込む[S RESP=$$ReadMsg^ZVCMSUB(Rtail) ※読み込んだ(受信)イベント応答メッセージを分解する[D VCMRESP^ZVCMSUB] ※(Revent2):イベント種別 ※(Rselcnt):0 ※(Rselno):ボタンの状態 -> 0:チェック無し 1:チェック有り 2:グレー表示 ※[Rmain] :チェック状態(0,1)[2008-4-3] ※(Rsub):ボタン文字列[2008-4-3] ※(Rkeycode):キーボードイベント時仮想キーコード ※(Rshift):シフト状態 0:無し 1:シフト 2:コントロール 4:<ALT>の組み合わせ ───────────────────────────────────── [2]チェックボックス(TCheckBox)オブジェクトのイベント →共通ルーチン【ZVCMEVENT】 →共通ルーチン【ZVCMEVENT7】応答イベントコード定数 ───────────────────────────────────── ◆ イベントマスクを設定(応答を可にする) ※イベント設定変数を初期化→ D CLEAR^ZVCMEVENT ───────────────────────────────────── mask0= 2 : (1)マウス左クリックイベント応答(ビット1) ※イベント設定変数を設定 → D CLICK^ZVCMEVENT ※リスポンス応答メッセージ中のイベントコード→ [Revent2=EV2Click],[Revent1=EV1Click] ───────────────────────────────────── mask0= 4 : (2)マウス右クリック(ポップアップ)イベント応答(ビット2) ※イベント設定変数を設定 → D POPUP^ZVCMEVENT ※リスポンス応答メッセージ中のイベントコード→ [Revent2=EV2RClick],[Revent1=EV1Popup] ───────────────────────────────────── mask0= 8 : (3)キーボードイベント応答(ビット3) ※イベント設定変数を設定 → D KEYBORD^ZVCMEVENT ※リスポンス応答メッセージ中のイベントコード→ [Revent2=EV2Keybord],[Revent1=EV1Keybord] ───────────────────────────────────── mask1= 8 : (11)フォーカスを失う時応答(ビット3) ※イベント設定変数を設定 → D KILLFOCUS^ZVCMEVENT ※リスポンス応答メッセージ中のイベントコード→ [Revent2=EV2Exit],[Revent1=EV1Exit] ───────────────────────────────────── mask1= 16 : (12)フォーカスを得る時応答(ビット4) ※イベント設定変数を設定 → D SETFOCUS^ZVCMEVENT ※リスポンス応答メッセージ中のイベントコード→ [Revent2=EV2Enter],[Revent1=EV1Enter] ───────────────────────────────────── ※イベントマスクを設定 → D SETEVENT^ZVCMEVENT ─────────────────────────────────── 17-1 |目次|前ページ|次ページ|