CompareDateTimeで時間のみ比較

解決


syosinsya  2012-06-18 05:17:56  No: 42495

時間を比較する場合にCompareDateTimeがありますが、
現在時刻としてされた時刻の比較の場合に

if (CompareDateTime(now, EncodeDateTime(2012,12,5,12,16,00,000))) = GreaterThanValue thenならOKですが、
if (CompareDateTime(now, Date + EncodeDateTime(12,16,00,000))) = GreaterThanValue then にすると実パラメータが不足しているとの
エラーとなります。
初心者なのでどごがおかしいかよくわかりません。
ご指摘願えればありがたいのですが、また時間だけ
比較して分岐する場合は良い方法はありませんでしょうか?
WinXp  SP3  +Delphi7です。
よろしくお願いします。


  2012-06-18 05:27:10  No: 42496

EncodeDateTime(const AYear, AMonth, ADay, AHour, AMinute, ASecond, AMilliSecond: Word):TDateTime;

この関数、引数はいくつ必要でしょうか。


  2012-06-18 05:32:14  No: 42497

それと、そこまでできてるのであれば、後は年月日を合わせて時間だけ
比較する形にするのは簡単だと思いますが。

まずは、EncodeDateTimeの使い方をよく見てみたらどうでしょう。
時間だけを扱うEncodeTimeとかの関数は、基本ができてからゆっくり手を
出せばよいでしょう。


syosinsya  2012-06-18 06:40:19  No: 42498

あさんありがおとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加