回 帖 发 新 帖 刷新版面

主题:如何限定多个edit必须输入数据?

各位大侠好:

如何限定多个edit必须输入数据?有无简便方法?[em10][em8][em5][em1]

回复列表 (共6个回复)

沙发

说得不是很清楚....不知如何回答...请清楚一点再回...

简便方法肯定有....
可以共同调一个事件...

板凳

比如说有edit1.text,edit2.text,,,,edit15.text.
一种情况:要求1-15个edit.text都必须输入数据;
第二种情况:除了edit2.text 和edit5.text不限制输入数据,其它全不能为空
第三种情况:同时给15个edit赋空值

望详细赐教!

3 楼

情况1
var
  tempname:array[0..8]of char;
  i:shortint;
  bool:boolean;
begin
bool:=false;
  for i:=1 to 15 do
    begin
      strpcopy(tempname,'edit'+inttostr(i));
      if tedit(findcomponent(tempname)).text='' then
        begin
          bool:=true;
          break;
        end;
    end;
  if bool then
    showmessage('有edit未输入数据,请重试');
end;

二种情况
中间那部份代码稍微改一下就好了
  for i:=1 to 15 do
   if (i<>2)and(i<>5) then
    begin
      strpcopy(tempname,'edit'+inttostr(i));
      if tedit(findcomponent(tempname)).text='' then
        begin
          bool:=true;
          break;
        end;
    end;

三种情况,更是简单
  for i:=1 to 15 do
    begin
      strpcopy(tempname,'edit'+inttostr(i));
      tedit(findcomponent(tempname)).text:=''; 
      //tedit(findcomponent(tempname)).clear; 
    end;

4 楼

哈哈

5 楼

笑什么?

6 楼

使用MaskEdit,它可以限定输入的内容。

我来回复

您尚未登录,请登录后再回复。点此登录或注册