掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
monthカレンダーにスケジュールを書き込む (ID:37704)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
TChangeDate = procedure(Year,Month,Day: Word) of Object; TMonthCalendar = class(ComCtrls.TMonthCalendar) private FChangeDate: TChangeDate; public procedure CNNotify(var Message: TWMNotify); message CN_NOTIFY; published property OnChangeDate: TChangeDate read FChangeDate write FChangeDate; end; procedure TMonthCalendar.CNNotify(var Message: TWMNotify); var Year,Month,Day: Word; begin inherited; with Message, NMHdr^ do begin case code of MCN_SELCHANGE: begin if Assigned(OnChangeDate) = True then begin DeCodeDate(Date,Year,Month,Day); OnChangeDate(Year,Month,Day); end; end; end; end; end; procedure TForm4.ChangeDate(Year,Month,Day: Word); begin //ここで適当に処理 Exit; end; procedure TForm4.FormCreate(Sender: TObject); var Year,Month,Day: Word; begin MonthCalendar1.OnChangeDate := ChangeDate; end; procedure TForm4.Button1Click(Sender: TObject); var Year,Month,Day: Word; begin MonthCalendar1.Date := MonthCalendar1.Date + 1; DeCodeDate(MonthCalendar1.Date,Year,Month,Day); ChangeDate(Year,Month,Day); end; procedure TForm4.Button2Click(Sender: TObject); var Year,Month,Day: Word; begin MonthCalendar1.Date := MonthCalendar1.Date - 1; DeCodeDate(MonthCalendar1.Date,Year,Month,Day); ChangeDate(Year,Month,Day); end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.