Ver Mensaje Individual
  #2  
Antiguo 03-12-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola cincosoft.

MonthCalendar, no posee un evento que se dispare ante la selección de un día, pero si el Parent del TMonthCalendar es el form, podrías aprovechar el mensaje WM_NOTIFY.

Como ejemplo:
Código Delphi [-]
...
type
  TForm1 = class(TForm)
    MonthCalendar1: TMonthCalendar;
  private
    FDateSelected: TDate;
    procedure MonthCalendarChange;
  protected
   procedure WmNotify(var Msg: TWMNOTIFY); message WM_NOTIFY;
  public
  end;

var
  Form1: TForm1;

implementation {$R *.dfm}

uses CommCtrl;

procedure TForm1.MonthCalendarChange;
begin
  ShowMessage('Fecha seleccionada: '+ DateToStr(FDateSelected));
end;

procedure TForm1.WmNotify(var Msg: TWMNOTIFY);
begin
  if PNMHdr(Msg.NMHdr)^.code = MCN_SELECT then
  begin
    with PNMSelChange(Msg.NMHdr)^ do
    begin
      // Aquí las acciones que desees (pongo unas de ejemplo)
      FDateSelected:= MonthCalendar1.Date;
      MonthCalendarChange;
    end;
  end;
  inherited;
end;
...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 03-12-2012 a las 18:40:40.
Responder Con Cita