Einzelnen Beitrag anzeigen

Volker Z.

Registriert seit: 4. Dez 2012
Ort: Augsburg, Bayern, Süddeutschland
419 Beiträge
 
Delphi XE4 Ultimate
 
#2

AW: TMonthCalendar OnClick nur wenn man ein Datum ausgewählt hat.

  Alt 21. Mai 2013, 22:27
Hallo,

du könntest mal folgenden Ansatz versuchen:
Delphi-Quellcode:
type
  TMonthCalendar = class(Vcl.ComCtrls.TMonthCalendar)
  strict private
    FSelection : Boolean;
  private
    procedure CNNotify(var Msg : TWMNotify); message CN_NOTIFY;
  public
    constructor Create (AOwner: TComponent); override;
    property Selection : Boolean read FSelection;
  end;

  Tfrm_request = class(TForm)
    // Alles wie gehabt
  end;

implementation

uses
  WinApi.CommCtrl;

procedure TMonthCalendar.CNNotify (var Msg : TWMNotify);
begin
  FSelection := Msg.NMHdr^.code = MCN_SELECT;

  inherited
end;

constructor TMonthCalendar.Create (AOwner : TComponent);
begin
  inherited Create (AOwner);

  FSelection := False;
end;

procedure Tfrm_request.SetMonthCalendarDateToField(Sender: TObject);
var
  sender_name : string;
begin
  if not ((Sender is TMonthCalendar) and TMonthCalendar (Sender).Selection) then
    Exit;

  // Rest wie gehabt
end;
Gruß
Volker Zeller
  Mit Zitat antworten Zitat