El tema del DateTimePicker, es que el foco retorna a la ultima posicion en donde se encontraba el caret. Este esta dividido en dia,mes y año.
Yo lo que hago es modificar el ParseImput, y me selecciona todo.
Probá si te sirve:
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
begin
DateTimePicker1.ParseInput:=True;
DateTimePicker1.SetFocus;
end;
Saludos
__________________
Código Delphi
[-]
try
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;