Hola a todos.
Haciendo unas pruebas con el componente
TDateTimePicker para contestar a un compañero, creo que apareció un bug.
El problema sucede cuando pongo la propiedad
ParseInput:= True para que me permita aprovechar el evento
OnUserInput.
Pero este evento jamás se dispara. No es un componente que use mucho y nunca lo había notado.
Según la ayuda de Delphi:
Delphi syntax:
type TDTParseInputEvent = procedure(Sender: TObject; const UserString: string; var DateAndTime: TDateTime;
var AllowChange: Boolean) of object;
property OnUserInput: TDTParseInputEvent;
Sintetizando... el código que realizé:
Código:
type
TForm1 = class(TForm)
DTimePicker: TDateTimePicker;
Button1: TButton;
procedure FormCreate(Sender: TObject);
private
procedure DTimePickerUserInput(Sender: TObject; const UserString: string;
var DateAndTime: TDateTime; var AllowChange: Boolean);
public
end;
var
Form1: TForm1;
implementation {$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
DTimePicker.ParseInput:= True;
DTimePicker.OnUserInput:= DTimePickerUserInput;
end;
procedure TForm1.DTimePickerUserInput(Sender: TObject;
const UserString: string; var DateAndTime: TDateTime;var AllowChange: Boolean);
begin
ShowMessage('*'); // Beep o poniendo un Break, no entra a esta línea
end;
Si alguien encuentra algún error en el código, o sabe del bug, agradezco su respuesta.
Saludos.