怎么样限制数据的输入格式,例如在dbedit中限制输入的数据小数点前面只能输入6位整数,小数点后面只能输入2位数,在输入多的就输不进去。除了maskedit外,对dbedit怎么限制啊?我得dbedit对应得是adoquery中相应得字段。
解决方案 »
- 猪八戒威客网上的程序员也太不值钱了吧?
- 怎样添加标尺呢
- 统计一下,有多少朋友在开发软件时,完全使用类和设计模式来实现的?
- 100分。释放动态控件数组的时候总是出错。求助 。
- 高分送。在paradox7中如何保存库结构?
- 怎么遍历整个硬盘,或者是一个分区,找出其下所有的*.bmp,*.jpg
- ini读取combox的问题
- 如保用TMediaPlayer控件播放媒体文件不播放声音
- 想赚点外快的速进,基于Delphi7开发桌面帮助系统
- 先用Select查询出结果,存在ClientDataSet中,如何按条件再在ClientDataSet中二次查询呢?
- 如何才能挂起和执行一个线程
- 现在的个人网站论坛好象风格都一致,有谁知道是用什么做的吗?
procedure TForm1.DBEdit1KeyPress(Sender: TObject; var Key: Char);
begin
...
end;
同时你注意一下数据集的UpdateError时间。这些东西可以结合着使用
procedure KeyControl(Keyset:Char);
var
handle:HWND;
flagNum,flagXX,flagDX:boolean;
beginflagNum:=((Keyset>'9') or (Keyset<'0'));
flagXX:=((Keyset>'z') or (keyset<'a'));
flagDX:= ((Keyset>'Z') or (keyset<'A'));
if (flagNum and flagXX and flagDX and (Keyset<>#8) and (Keyset<>'.')) then
begin
messagebox(handle,pchar('该按键此处禁用!'),pchar('信息'),mb_ok);
Abort;
end;
end;
然后可以在其中用copy来对字符串进行校验,如果copy(string,7,1)<>'.'那么。如果lenght(string)>9那么。
时间有限自己搞吧!
能给个例子吗,我现在处理得还有点困难,谢谢。
麻烦各位帮帮小弟一把。
不让输入可以在KEYPRESS事件里
IF NOT KEY IN['0'..'9'] THEN KEY:=#0;刘刘
限制DBGRID可以通过ROWCOUNT来控制增加,减少
谢谢你的帮忙,我这就去试试。
这是怎么回事啊?
其实就是判断DBEdit1.Text与Round(DBEdit1.Text,-2)是否相等
var
i:integer;
len:integer;
begin
len:=7;
for i:=0 to len do
begin
if not (key in ['0'..'9',#9,#8,#13]) then
begin
key:=#0;
showmessage('请输入数字');
end;
end;
...
end;