![]() |
![]() ![]() ![]() ![]() |
|
Удалить отображение текущей даты из TDateTimePickerDelphi , Компоненты и Классы , TDateTimePickerУдалить отображение текущей даты из TDateTimePicker
Оформил: DeeCo
uses
CommCtrl;
procedure TForm1.DateTimePicker1DropDown(Sender: TObject);
var
wnd: HWND;
Style: Integer;
begin
wnd := DateTime_GetMonthCal(DateTimePicker1.Handle);
if wnd <> 0 then
begin
Style := GetWindowLong(wnd, GWL_STYLE);
SetWindowLong(wnd, GWL_STYLE, Style or MCS_NOTODAY or MCS_NOTODAYCIRCLE);
end;
end;
{
The calendar will still highlite the current day but the circle and the
today display at the bottom are gone.
}
Here is the translation of the provided text into Russian: Код, предоставленный ниже, предназначен для удаления отображения текущей даты из контрола TDateTimePicker в Delphi. Он достигает этого, модифицируя стиль окна внутреннего месячного календаря контрола при открытии выпадающего меню. Вот подробное описание того, что код делает:
Однако, как упоминалось в комментариях к коду, эта модификация все еще будет выделять текущий день в календаре, но без отображения круга или сегодняшней даты внизу. Это может быть желаемым поведением для некоторых приложений, в зависимости от их конкретных требований. Надо отметить, что есть альтернативные способы достижения этого результата без модификации стиля окна месячного календаря. Например, вы можете создать custom календарь и обрабатывать рисование текущего дня самостоятельно, или использовать third-party библиотеку, которая предоставляет больше гибкости в настройке внешнего вида даты пикера. Удаление отображения текущей даты из TDateTimePicker можно выполнить с помощью процедуры DateTimePicker1DropDown, которая изменяет стиль календаря для скрытия круга и подписи 'Сегодня'. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш :: Главная :: TDateTimePicker ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||