| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
edwinhp2 Lt JG

Registrado: 19 Nov 2005Mensajes: 67
|
Publicado: Lun 27 Ago, 2007 12:52 am Asunto: Cambio de fechas en TMonthCalendar |
|
|
Hola compañeros,
con apoyo en código que encontré en Internet, implementé el siguiente código que debería detectar el cambio de fecha en un TMonthCalendar, pero no me está funcionando.
¿¿¿ Alguna sugerencia ???
Saludos !!!
[code]
Archivo H
class PACKAGE TMonthCalendarEx : public TMonthCalendar
{
private:
Classes::TNotifyEvent FOnChange;
void __fastcall CNNotify(TWMNotify &Message);
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(CN_NOTIFY, TWMNotify, CNNotify)
END_MESSAGE_MAP(TMonthCalendar)
protected:
public:
__fastcall TMonthCalendarEx(TComponent* Owner);
__published:
__property Classes::TNotifyEvent OnChange = { read = FOnChange, write = FOnChange };
};
**** Archivo CPP *****
void __fastcall TMonthCalendarEx::CNNotify(TWMNotify &Message)
{
inherited::Dispatch(&Message);
int NotifyCode = Message.NMHdr->code;
if ( NotifyCode == MCN_SELCHANGE )
FOnChange(this);
}[/code] |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Vie 28 Sep, 2007 11:30 pm Asunto: |
|
|
Hola,
que problema te da ? yo lo he probado y me funciona bien (lo estoy probando con el BCB6 en WinXP).
Aunque para prevenir problemas te recomiendo que compruebes que FOnChange tiene un valor asignado. Ya que si no fallara por ejemplo al no asignar ninguna funcion a ese evento..:
| Código: | void __fastcall TMonthCalendarEx::CNNotify(TWMNotify &Message)
{
inherited::Dispatch(&Message);
if (FOnChange)
{
int NotifyCode = Message.NMHdr->code;
if (NotifyCode == MCN_SELCHANGE)
FOnChange(this);
}
} |
|
|
| Volver arriba |
|
 |
|