DateTimePicker - BoldDays
2 отговора
74 прегледа
DateTimePicker - BoldDays
Доколкото видях във хелпа, не само при MonthCalendar, но и при DTPicker може да почернят/удебелят някои дати.
Добре, но при MonthCalendar си има такъв евент (GetMonthInfo), а при DTPicker няма.
Та въпроса ми някой знае ли как става, и дали въобще е възможно?
Добре, но при MonthCalendar си има такъв евент (GetMonthInfo), а при DTPicker няма.
Та въпроса ми някой знае ли как става, и дали въобще е възможно?
Re: DateTimePicker - BoldDays
Не бъди толкова груб. Не е възпитано.
Ако разгледаш сорса ще видиш, че OnGetMonthInfo е декларирано като protected в общия за TDateTimePicker и TMonthCalendar клас TCommonCalendar. Просто в TDateTimePicker той не е изкаран като public. Едно възможно решение е да си направиш клас наследник на TDateTimePicker, в който да си изкараш необходимото ти пропърти и да си кастваш после DateTimePicker-а към него, когато си закачаш event-а.
Човешкият ум е ограничен. Глупостта не е.
Ако разгледаш сорса ще видиш, че OnGetMonthInfo е декларирано като protected в общия за TDateTimePicker и TMonthCalendar клас TCommonCalendar. Просто в TDateTimePicker той не е изкаран като public. Едно възможно решение е да си направиш клас наследник на TDateTimePicker, в който да си изкараш необходимото ти пропърти и да си кастваш после DateTimePicker-а към него, когато си закачаш event-а.
type
TMyDateTimePicker = class(TDateTimePicker)
public
property OnGetMonthInfo;
end;
procedure TForm1.GetMonthInfo(Sender: TObject; Month: LongWord;
var MonthBoldInfo: LongWord);
begin
//Do something here
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
TMyDateTimePicker(DateTimePicker1).OnGetMonthInfo := GetMonthInfo;
end;
Човешкият ум е ограничен. Глупостта не е.