TdateTimePickerの制御

解決


RYO  2010-01-07 16:12:10  No: 36788  IP: [192.*.*.*]

フォームにTeditとTdateTimePickerを置き、TeditのOnEnterイベントでTdateTimmePickerをドロップダウン状態にしたいのですが、Droppeddownプロパティが読み出し専用と言われてプログラムから状態を制御できません。何か方法はあるでしょうか?

編集 削除
たぬ吉  2010-01-07 17:39:02  No: 36789  IP: [192.*.*.*]

こんなのでどうでしょう。

SendMessage(DateTimePicker1.Handle, WM_SYSKEYDOWN, VK_DOWN, 0);

編集 削除
RYO  2010-01-08 09:06:10  No: 36790  IP: [192.*.*.*]

たぬ吉さん、ありがとうございます。
> SendMessage(DateTimePicker1.Handle, WM_SYSKEYDOWN, VK_DOWN, 0);
これでうまくDateTimePickeの開閉ができるようになりました。
もうひとつ、上記コードで表示されたFateTimePickerでは、通常使えるカーソルキーによる日付の移動ができません。表示されたカレンダー内の移動にカーソルキーを有効にすることはできないでしょうか?

編集 削除
通りすがり  2010-01-08 09:28:29  No: 36791  IP: [192.*.*.*]

DateTimePicker1のOnDropDownイベントで
DateTimePicker1.SetFocus;
ではいかがでしょうか?

編集 削除
RYO  2010-01-08 09:41:57  No: 36792  IP: [192.*.*.*]

通りすがりさん
> DateTimePicker1のOnDropDownイベントで
> DateTimePicker1.SetFocus;
> ではいかがでしょうか?
ここでSetfocusすればいいのですね。Setfocusを使えばできそうだと思っていましたが、別のところでやっていました。
一気に課題解決です。ありがとうございました。

編集 削除