在DBGRID中怎样控制输入框的有效性,请高手过来(50分)

  • 主题发起人 主题发起人 lpk
  • 开始时间 开始时间
L

lpk

Unregistered / Unconfirmed
GUEST, unregistred user!
在DBGRID中怎样控制输入框的有效性,比如:一个TABLE表中有商品编码,商
品名称,数量,单位,金额和一个DATASOURCE、DBGRID,为了控制商品编码输
入的正确,必须控制用户正确输入商品编码,请问怎样控制比较适当。
 
>>必须控制用户正确输入商品编码
在Table中使用Lookup字段,则在DBGrid中会自动用LookupCombobox让用户在其
中选,则商品编码一定正确。
 
可以通过在KeyPress事件中写语句来控制。
例如:
如果商品编码只能是数字,可以这么写:
if not(key in ['0'..'9',#8]) then key:=chr(0);
//#8是回格键
 
我不想用LOOKUP字段,而且我要实现的是如果商品编码无效,就不充许用ESC、光标
键等移出该列,我试过了OnColExit事件,但在同一列上移动无效,请高手求助。
 
在补充一句,用TEDIT控件不能控制数字型的输入,有没有只针对数字型的输入TEDIT
控件
 
我除了在onColExit事件中判断外,还在onKeyDown事件中判断如果是上下箭头键
再判断值是否有效
 
试着用dbgrid的selectedindex=0控制选定的列,在相应的事件里处理自己的事件。
 
listen



--------------------------------------------------------------------------------
 
多人接受答案了。
 
后退
顶部