Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.14;
Скачать: CL | DM;

Вниз

Click в MonthCalendar: как идентифицировать щелчок по дню?   Найти похожие ветки 

 
Vlad40   (2004-02-26 13:14) [0]

Событие OnClick в TMonthCalendar происходит при нажатии мышки в любом месте клиентской области календаря. А как можно узнать, что юзер кликнул по номеру дня?


 
Vlad40   (2004-02-26 14:21) [1]

Никто не знает? Что-то у меня никак не получается отловить это :-(


 
Vlad40   (2004-02-29 10:49) [2]

Глупый вопрос? / Никто не знает? / Нельзя реализовать?


 
YurikGl ©   (2004-02-29 11:13) [3]

При нажатии на день, соответсвующее число выбирается (по умолчанию синим цветом). Это свойство MonthCalendar1.date. Считываешь его и получаешь день на который нажали.


 
Vlad40   (2004-02-29 11:19) [4]

Это я понимаю :-). А если нажали на тот же день, который уже был выбран? Дело в том, что мне надо, чтобы происходило что-то типа того, что реализовано в TDateTimePicker - то есть когда пользователь кликает по дню, календарь закрывается, а когда в другом месте, то ничего не происходит


 
YurikGl ©   (2004-02-29 11:28) [5]

Тогда можно попробовать считать позицию мыши в момент клика и вперед или покопаться в исходниках, где он там ету синюю рамку рисует. При первом варианте будут проблемы с тем, что клавишу мыши нажали перевели мышь в другое место и там отпустили.


 
Anatoly Podgoretsky ©   (2004-02-29 11:29) [6]

Vlad40 (29.02.04 11:19) [4]
А запомнить предыдущее значение не судьба, обязательно для этого компонент нужен, ну тогда сделай своего наследника с таким свойством и поведением. По щелчку со старым значением автозакрытие, не забудь также свойство автозакрытие добавить.

Дельфи это ООП, которое включает и наследование


 
Vlad40   (2004-02-29 11:39) [7]


> YurikGl © (29.02.04 11:28) [5]

Считать позицию мыши - не проблема, но это, по-моему, мало что даст, т.к. я не знаю координат "области чисел" на календаре.


> Anatoly Podgoretsky © (29.02.04 11:29) [6]

Непонятно, что дает запоминание предыдущего значения, т.к. повторный клик по этой же дате или где-то в верхней синей области различить я не смогу.

Наследник или новый компонент - это понятно, что можно сделать. Просто думал, что можно как-то проще - отловить к-либо сообщение или еще какая-нибудь хитрость. Всем спасибо


 
YurikGl ©   (2004-02-29 11:40) [8]

TMonthCalendar является наследником TCommonCalendar а у него масса интересных private свойств и фунций. В т.ч.
procedure SetDate(Value: TDate);
procedure SetDateTime(Value: TDateTime);


 
Anatoly Podgoretsky ©   (2004-02-29 11:47) [9]

Таких не вижу, но есть MsgSetDateTime



Страницы: 1 вся ветка

Текущий архив: 2004.03.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.038 c
14-43754
wasilla
2004-02-19 17:40
2004.03.14
Где скачать книгу Краснова по ОпенЖилях?


14-43823
Шоломицкий
2004-02-22 19:38
2004.03.14
Про Linux!!!


8-43685
JB
2003-11-05 12:18
2004.03.14
Кривые Безье


3-43331
Layner
2004-02-16 11:52
2004.03.14
Преоборазование БД ACCESS *.mdb в файл *.mde, или как зищитить


14-43821
Knight
2004-02-21 00:55
2004.03.14
Москвичи, требуется информация для размышления...