要求:日期输入格式为 dd/MM/yyyy
不是用DateTimePicker完成其实月份或天数是可以不填。我本来想用 MaskEdit完成 但显示结果不是我想要的,它的'/'变成'-'了只要能做到用其它控件或者什么方法都可以了我想信大侠们一定会遇到这个问题我等待你们的帮助
不是用DateTimePicker完成其实月份或天数是可以不填。我本来想用 MaskEdit完成 但显示结果不是我想要的,它的'/'变成'-'了只要能做到用其它控件或者什么方法都可以了我想信大侠们一定会遇到这个问题我等待你们的帮助
procedure TForm1.DateTimePicker1Change(Sender: TObject);
begin
edit1.Text:=FormatDateTime('dd/mm/yyyy',DateTimePicker1.Date);
end;
要在控制面板里将你的日期格式改成dd/mm/yyyy形式才行
如下:
function IsDigit(ch: char): boolean;
begin
Result := ch in ['0'..'9'];
end;procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
Fl:Word;
begin
if IsDigit(Key) then
begin
Fl := length((Sender as TEdit).Text);
if (Fl = 2) or (Fl = 5) then
(Sender as TEdit).text := (Sender as TEdit).text + '/';
(Sender as TEdit).SelStart := fl +1;
end;
end;你自己也可以加上对天数和月份的判断了,呵呵,祝好运了!