バージョン 6.3.3
 —  プログラミングガイド  —

日付/時刻ピッカー(DTP)コントロールの操作

このドキュメントでは、次のトピックについて説明します。


はじめに

日付/時刻ピッカー(DTP)コントロールは、ユーザーによる日付または時刻情報の入力を簡素化するために使用します。 DTP コントロールは、時刻入力に対しては、スピンコントロールに似た外観と動作をします。任意の日付入力に対しては、スピンコントロールまたは選択ボックスのいずれかに似た外観と動作をします。 日付入力の場合、下矢印が表示されているボタンをユーザーがクリックすると、従来のリストボックスではなく、カレンダーが表示されます。

Top of page

日付/時刻のフォーマット

デフォルトでは、日付/時刻の情報は、現在の地域の設定に定義されている日付/時刻のフォーマットに従って表示されます。 Windows には長いフォーマットと短いフォーマットの 2 つの代替日付フォーマットがあり(両方ともユーザーが変更可能)、また短い日付フォーマットには世紀の情報が含まれないことがあるため、3 つの STYLE フラグの 1 つにより、使用される標準の日付フォーマットが決定されます。 これらのフォーマットは以下のとおりです(相互排他的)。

補足: [時刻(t)]スタイルフラグは、コントロールで(日付ではなく)時刻情報を表示することを示すために用意されています。

これらの標準のフォーマットが十分でない場合は、EDIT-MASK 属性を使用して、これらのフォーマットよりも優先させるカスタムフォーマット文字列を指定することができます。 ただし、フォーマット文字列の指定子は、Natural 内の他の場所にある編集マスクに使用された指定子には対応していません。 次のテーブルに、使用可能な指定子とその意味を示します。

指定子 説明
d 1 桁または 2 桁の日付。
dd 2 桁の日付。 1 桁の日付の場合、先頭に 0 が付けられます。
ddd 3 文字の週日の略記。
dddd 完全な週日名。
h 12 時間フォーマットの 1 桁または 2 桁の時間。
hh 12 時間フォーマットの 2 桁の時間。 1 桁の値の場合、先頭に 0 が付けられます。
H 24 時間フォーマットの 1 桁または 2 桁の時間。
HH 24 時間フォーマットの 2 桁の時間。 1 桁の値の場合、先頭に 0 が付けられます。
m 1 桁または 2 桁の分。
mm 2 桁の分。 1 桁の値の場合、先頭に 0 が付けられます。
s 1 桁または 2 桁の秒。
ss 2 桁の秒。 1 桁の値の場合、先頭に 0 が付けられます。
M 1 桁または 2 桁の月番号。
MM 2 桁の月番号。 1 桁の値の場合、先頭に 0 が付けられます。
MMM 3 文字の月の略記。
MMMM 完全な月名。
t AM/PM 略記の 1 文字(つまり、AM は "A" と表示される)。
tt AM/PM 略記の 2 文字(つまり、AM は "AM" と表示される)。
yy 年の下 2 桁(つまり、2005 年は "05" と表示される)。
yyyy 完全な年(つまり、2005 年は "2005" と表示される)。

また、引用符で囲まれた文字は、指定したとおりに表示されます。 引用符で囲まれた引用符を指定する場合は、2 つの一重引用符を連続して使用する必要があります。 スペースおよび句読点の記号(コンマなど)は、引用符で囲む必要はありません。

例えば、"John's birthday is Friday, December 31, 1969" という文字列を表示するには、DTP コントロールの EDIT-MASK 属性を "John''s birthday is' dddd, MMMM d, yyyy" に設定します。

Top of page

日付および時刻の入力

DTP コントロールには、指定された情報を修正するための方法がいくつかあります。

例えば、DTP コントロールで日付または時刻を現在の日付または時刻に設定するには、次の割り当てを使用します。

#DTP-1.TIME := *DATX

または

#DTP-1.TIME := *TIMX

それぞれ、#DTP-1 は DTP コントロールのハンドルであるとみなされます。

DTP コントロールでは、日付または時刻のコンポーネントの編集しか許可されませんが、コントロールのスタイルに応じて、日付および時刻の両方の情報を保存します。

DTP コントロールの日付または時刻がユーザーによって変更されると、そのコントロールの CHANGE イベントが発生します(抑制されていない場合)。 DTP コントロールがプログラムによって変更された場合、このイベントは発生しません。

Top of page

空値

DTP コントロールに[値なし"" を許可 (n)]のスタイルが指定されている場合、コントロールにチェックボックスが表示されます。 このチェックボックスがオンになっていない場合、そのコントロールに関連付けられた日付または時刻はないと解釈されます。 アプリケーションは、コントロールの CHECKED 属性をクエリすることで、この状態をテストすることができます。 また、CHECKED 属性を UNCHECKED に戻すことで、"値なし"の状態にコントロールを戻すこともできます。 ただし、CHECKED 属性を明示的に CHECKED に設定することはできません。これは、日付または時刻がコントロールに適用されるたびに、暗黙的に行われるためです。 さらに、CHECKED 属性は、[値なし"" を許可 (n)]スタイルを使用しない場合、DTP コントロールにまったく設定できません。

Top of page

カレンダーのカラーおよびフォント

DTP コントロールと関連してカレンダー(存在する場合)が使用するカラーおよびフォントは、それぞれ SET-AUX-COLOR アクションおよび SET-AUX-FONT アクションを使用して変更できます。

Top of page