现在可以只允许输入数字,小数点,还有加减号了
但是复制字符还是可以输入,所以当鼠标离开这个DBEdit的时候,就会自动有个错误的弹出窗口,意思就是内容不符合数据库中那个字段
有没有办法更改那个警告窗口的内容?????
我在delphi/source/vcl 下面看那个DBCTRLS.PAS ,在EDIT exit的时候,有个try,然后出错会有一个sendmessage,是不是就是这个message?但是又牵涉到其他好几个PAS文件,根本就不懂了
请各位帮忙
或者有没有其他解决这个校验的方法,禁止复制?屏蔽系统的校验换成自己的try?
6 个解决方案
#1
在DBEdit的onkeydown写自己的事件
#2
自己处理事件就是的
不一定非要用DBedit的,自己写个好用的都不难
http://lysoft.7u7.net
不一定非要用DBedit的,自己写个好用的都不难
http://lysoft.7u7.net
#3
把ctrl + v给屏蔽了,不让用户粘贴就可以了!
#4
数据库不允许输入字符,那当输入非法字符后报错有什么不对吗?
你如果不希望显示系统的错误信息,可以在onchange事件里对输入的内容进行判断,
最好不用dbedit,用户就算输入正确也不一定就想保存,可dbedit会自动把输入的数据提交到数据库!
你如果不希望显示系统的错误信息,可以在onchange事件里对输入的内容进行判断,
最好不用dbedit,用户就算输入正确也不一定就想保存,可dbedit会自动把输入的数据提交到数据库!
#5
procedure TForm1.DBEdit1Exit(Sender: TObject);
begin
Try
StrToFloat(DBEdit1.Text);
Except
DBEdit1.SetFocus;
end;
end;
begin
Try
StrToFloat(DBEdit1.Text);
Except
DBEdit1.SetFocus;
end;
end;
#6
谢谢各位的回复,如果是用onchange的事件做的话,每输入一个键,就会判断一下,那样使用起来岂不是非常麻烦
ctrl+v已经不能用了,但是鼠标的粘贴还没有屏蔽,现在可以试试
如果在dbeditexit事件里写的话,运行时还是先执行数据库字段的校验,然后才执行exit事件
我希望的结果是,用户可以复制粘贴,但是在exit或者post的时候校验一下,警告框不想看到系统的那个警告,请各位帮忙
偶第一次发问题:)
ctrl+v已经不能用了,但是鼠标的粘贴还没有屏蔽,现在可以试试
如果在dbeditexit事件里写的话,运行时还是先执行数据库字段的校验,然后才执行exit事件
我希望的结果是,用户可以复制粘贴,但是在exit或者post的时候校验一下,警告框不想看到系统的那个警告,请各位帮忙
偶第一次发问题:)
#1
在DBEdit的onkeydown写自己的事件
#2
自己处理事件就是的
不一定非要用DBedit的,自己写个好用的都不难
http://lysoft.7u7.net
不一定非要用DBedit的,自己写个好用的都不难
http://lysoft.7u7.net
#3
把ctrl + v给屏蔽了,不让用户粘贴就可以了!
#4
数据库不允许输入字符,那当输入非法字符后报错有什么不对吗?
你如果不希望显示系统的错误信息,可以在onchange事件里对输入的内容进行判断,
最好不用dbedit,用户就算输入正确也不一定就想保存,可dbedit会自动把输入的数据提交到数据库!
你如果不希望显示系统的错误信息,可以在onchange事件里对输入的内容进行判断,
最好不用dbedit,用户就算输入正确也不一定就想保存,可dbedit会自动把输入的数据提交到数据库!
#5
procedure TForm1.DBEdit1Exit(Sender: TObject);
begin
Try
StrToFloat(DBEdit1.Text);
Except
DBEdit1.SetFocus;
end;
end;
begin
Try
StrToFloat(DBEdit1.Text);
Except
DBEdit1.SetFocus;
end;
end;
#6
谢谢各位的回复,如果是用onchange的事件做的话,每输入一个键,就会判断一下,那样使用起来岂不是非常麻烦
ctrl+v已经不能用了,但是鼠标的粘贴还没有屏蔽,现在可以试试
如果在dbeditexit事件里写的话,运行时还是先执行数据库字段的校验,然后才执行exit事件
我希望的结果是,用户可以复制粘贴,但是在exit或者post的时候校验一下,警告框不想看到系统的那个警告,请各位帮忙
偶第一次发问题:)
ctrl+v已经不能用了,但是鼠标的粘贴还没有屏蔽,现在可以试试
如果在dbeditexit事件里写的话,运行时还是先执行数据库字段的校验,然后才执行exit事件
我希望的结果是,用户可以复制粘贴,但是在exit或者post的时候校验一下,警告框不想看到系统的那个警告,请各位帮忙
偶第一次发问题:)