|目次|前ページ|次ページ| ───────────────────────────────────── 40.デイトタイムピック(TDateTimePicker)の使い方 ───────────────────────────────────── [1]デイトタイムピック(TDateTimePicker)オブジェクトの作成 →共通ルーチン【ZVCMDTP】 TDateTimePicker は,特に日付と時刻を入力するために設計された ビジュアルコンポーネントです。 DateMode プロパティが dmComboBox の場合は, カレンダーのイラストが付いたドロップダウンリストが配置 されている点を除けばリストボックスやコンボボックスに似ています。 ユーザーはそのカレンダーから日付を選択できます。 日付または時刻も矢印キーでスクロールするかタイプすることで 選択することができます。 @予期しない値がセットされていないようにローカル変数を削除します[D KILL^ZVCMSUB] Aイベントマスクを設定します、例では[V2EVENT^ZVCMDTP]ですが->適切に設定 Brectパラメタを作成します。[D SETRECT^ZVCMDTP] (x,y,w,h):位置サイズ情報(行桁サイズモードに設定後) (color):コントロールの色番号(Colorプロパティ) -->指定なしの場合デフォルトの色 (font):コントロールのフオント番号(Fontプロパティ) -->指定なしの場合(null)[font=501]のフオントをセット[SETRECTにおいて] -->0:指定の場合デフォルトのフオント (keycode):キーボードイベントを発生させる終了キーコードのセット -->0を指定した場合0番のキーセットを指定した意味 ※イベントマスク設定でキーボードイベントを有効に設定しないとキーボードイベントは発生しません (その他のプロパティ):(zorder,TabOrder,TabStop)...は必要があれば設定します。 ※[D SETRECT^ZVCMDTP] -> rectstrが作成される Cコントロールの作成時プロパティ(デイトタイムピック作成パラメタ)をeditパラメタに設定します。[editstr] -->[D KILLEDIT^ZVCMDTP]ローカル変数を削除(定義されていないとnullを設定) ※[S Kind=処理種別(0:日付 1:時間)] ※[S Date=選択日付(yyyymmdd)] -> yyyymmdd, yyyy.mm.dd, yyyy/mm/dd, yyyy-mm-dd の様に指定 ※[S Time=時間(hh:mm:ss)] ※[S DateMode=形式(0:ドロップダウンカレンダ 1:アップダウン)] ※[S MinDate=スクロール可能な最小日付] -> yyyymmdd, yyyy.mm.dd, yyyy/mm/dd, yyyy-mm-dd の様に指定 ※[S MaxDate=スクロール可能な最大日付] -> yyyymmdd, yyyy.mm.dd, yyyy/mm/dd, yyyy-mm-dd の様に指定 ※[S DateFormat=日付形式(0:yyyymmdd 1:yymmdd)] ※[S Align=ドロップダウンカレンダ表示位置(0:左端 1:右端)] ※[S CheckB=チェックボックス表示(0:無し 1:有り)(ShowCheckBox)] ※[S Checked=チェックボックス(0:チェック無し 1:チェック有り)] カレンダの各パートに使われる色を色番号で指定 ※[S BackColor=月と月の間の背景色] ※[S MonthBackColor=カレンダの背景色] ※[S TextColor=日付のフオント] ※[S TitleBackColor=タイトルバーの背景色] ※[S TitleTextColor=タイトルバーのフオント] ※[S TrailingTextColor=表示月でない日付のフオント] ※[S Input=UserInputイベントを有効に(0:無効 1:有効)] ※[D SETEDIT^ZVCMDTP]プロパティパラメタ作成->EDITSTR ※[S editstr=EDITSTR] D[D CREATE^ZVCMDTP]で使用されるパラメタを設定する ※[S cid=(1〜1023の一意の番号)] ※[S form=(1〜1023の親フォームのフォーム番号)] ※[S parent=(1〜1023の親コントロールのcid番号)] ※[S group=(0〜32767のグループ番号)] ※[D CREATE^ZVCMDTP]エデットコントロールオブジェクトの作成 E日付を設定 ※[S cid=(1〜1023の一意の番号)] ※[S editstr=選択開始日付] -> yyyymmdd, yyyy.mm.dd, yyyy/mm/dd, yyyy-mm-dd の様に指定 ※[D DATE^ZVCMDTP]タブ選択表示を変更する Fイベント応答メッセージから入力された日付または時間を取得する ※イベント種別=通常クリックイベントで処理します ※イベント応答メッセージを読み込む[S RESP=$$ReadMsg^ZVCMSUB(Rtail) ※読み込んだ(受信)イベント応答メッセージを分解する[D VCMRESP^ZVCMSUB] ※(Revent2):イベント種別 ※[Rselno]:チェックボックス(0:チェック無し 1:チェック有り) ※(Rmain):入力日付(yyyymmdd/yymmdd)または時間(hh:mm:dd) ※[Rsub]:(null) ───────────────────────────────────── [2]デイトタイムピック(TDateTimePicker)オブジェクトのイベント →共通ルーチン【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] ───────────────────────────────────── mask2= 64 : (22)マウス左ダブルクリック応答(ビット6)【発生しない】 ※イベント設定変数を設定 → D LEFTDBL^ZVCMEVENT ※リスポンス応答メッセージ中のイベントコード→ [Revent2=EV2DblClick],[Revent1=EV1DblClick] ───────────────────────────────────── mask3= 1 : (24)タブの変更/値が変更等(Change)(ビット0) ※イベント設定変数を設定 → D CHANGE^ZVCMEVENT ※リスポンス応答メッセージ中のイベントコード→ [Revent2=EV2Change],[Revent1=EV1Other] ───────────────────────────────────── mask3= 4 : (26)日付時間入力された(ビット2) ※イベント設定変数を設定 → D DATEINPUT^ZVCMEVENT ※リスポンス応答メッセージ中のイベントコード→ [Revent2=EV2Input],[Revent1=EV1Other] 入力する場合は、<12>UserInputイベントを有効に(1:有効)設定 さらに yyyy/mm/dd の形式で入力します ───────────────────────────────────── ※イベントマスクを設定 → D SETEVENT^ZVCMEVENT ─────────────────────────────────── 40-1 |目次|前ページ|次ページ|