Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.013 c
3-43269
Sergeii
2004-02-17 15:41
2004.03.14
Kak organizovat ?


14-43809
Malkolinge
2004-02-23 12:24
2004.03.14
Profiler для Делфи


1-43635
фантазёр
2004-03-01 20:18
2004.03.14
procedure


3-43371
Денисыч
2004-02-15 01:06
2004.03.14
Какая технология доступа к данным лучше : BDE, ADO, dbExpress


7-43918
Den_lam
2003-12-11 12:06
2004.03.14
LPT





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский