Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.028 c
3-43249
Belkova
2004-02-13 12:03
2004.03.14
DBGrid


14-43853
Александр Иванов
2004-02-21 11:22
2004.03.14
Стоимость разработки


1-43431
Layner
2004-03-01 09:50
2004.03.14
Как редактировать строки в ListView?


3-43364
Денисыч
2004-02-15 01:18
2004.03.14
Как включить BDE в инсталлятор


1-43664
TGrey
2004-03-01 21:07
2004.03.14
при запуске приложения не отображать главную форму




   Наверх