怎样格式化……!!1!!急!!!

xiangyun123 2003-06-16 04:15:13
怎样格式化字段,比如我想在EDIT1输入“年-月-日”这样的形式,如果没输入此形式,就提示错误,怎样写代码
...全文
36 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
joky1981 2003-06-16
  • 打赏
  • 举报
回复
var
s: String;
begin
s:= Edit1.Text;
if (pos('年',s)=0) or (pos('月',s)=0) or (pos('日',s)=0) then
ShowMessage('不合法');
end;
jpyc 2003-06-16
  • 打赏
  • 举报
回复
阁下的情况有两种解决方法:
1使用日期选择控件,这样用户只需用鼠标点几下,选择了需要的时间就可以自动输入了。Express中带了这末一个控件dxdbdateedit,当然还有好多,可以到其他站上搜罗一下。
2使用检测,可以用上面所讲的异常处理报告用户输入不合法,也可以利用输入数据库时的返回异常进行报告。

提倡使用1。
ma369 2003-06-16
  • 打赏
  • 举报
回复
就用MaskEdit,简单快捷。
joycici 2003-06-16
  • 打赏
  • 举报
回复
用异常吧。

try
//这里写赋值的控件
except
//这里写输入不合法的提示
end

找楼上的写就可以。
gytyl 2003-06-16
  • 打赏
  • 举报
回复
procedure TForm1.DBEdit1Exit(Sender: TObject);
var dt : TDateTime;
begin
try
dt := strtoint(DbEdit1.Text);
except
Application.MessageBox('您输入的字符不合法,请重新输入。');
DbEdit1.SetFocus;
end;
end;
goldencity 2003-06-16
  • 打赏
  • 举报
回复
expressquantumgrid
有一个专业的datetime输入控件,你可以看看!
www.51delphi.com
coreblood 2003-06-16
  • 打赏
  • 举报
回复
和数据源关联之后错误的值不可以输入
helloqiner 2003-06-16
  • 打赏
  • 举报
回复
在DbEdit的OnExit事件中进行判断
procedure TForm1.DBEdit1Exit(Sender: TObject);
var dt : TDateTime;
begin
try
dt := strtoint(DbEdit1.Text);
except
Application.MessageBox('您输入的字符不合法,请重新输入。');
DbEdit1.SetFocus;
end;
end;
xiangyun123 2003-06-16
  • 打赏
  • 举报
回复
我是dbedit控件
OO_is_just_P 2003-06-16
  • 打赏
  • 举报
回复
onexit事件中使用 COPY OR POS函数
AustinLei 2003-06-16
  • 打赏
  • 举报
回复
用DataTimePick控件也可以实现啊。
xiangyun123 2003-06-16
  • 打赏
  • 举报
回复
不行呀,最好是EDIT呀,不是MASKEDIT
chechy 2003-06-16
  • 打赏
  • 举报
回复
用MaskEdit吧。
frogshero 2003-06-16
  • 打赏
  • 举报
回复
用maskedit不好吗?

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧