在delphi6中,如何使时间格式的输入变得简单(年月日的输入不需要左右键切换)?(50分)

N

nettorm

Unregistered / Unconfirmed
GUEST, unregistred user!
在delphi6中,如何使时间格式的输入变得简单?
(年月日的输入不需要左右键切换,也不需要选择,只要连续输入20020731或2002731,
自动识别为2002年7月31日)
 
用 MaskEidt ,把它的EditMask设置为 “0000年00月00日”
//检查日期输入是否正确
if EditDate.Text<>''
then
begin
//把输入的日期,如2002年07月30日 改为 02-07-30
str := ' - - ';
for i := 1 to 2 do
str := EditDate.Text[i+2];
for i := 4 to 5 do
str := EditDate.Text[i+3];
for i := 7 to 8 do
str := EditDate.Text[i+4];
//然后用StrtoDate试试,出错就表示是非法日期类型
try
StrToDate(str);
except
showmessage('"' + EditDate.Text + '" 不是正确的日期格式!');
EditDate.SetFocus;
exit;
end{try};
end{if};
在日期输入时直接输入20020730,EditMask自己给你切换!
 
上面说的对!
 
我是第二天用delphi6,还有点不清楚
上面的代码放在那个事件(event)
 
你可以放在EditDate.OnExit上,那样当输入焦点离开时,就可以检查。
如果不正确,上面的程序可以将焦点在设回去(EditDateSetFocus)。
注意是用EditMask控件!
 
上面的说得对
 
一群废物,不回答不要占地
 
接受答案了.
 
顶部