一个form中有3个edit,分别是edit1、edit2、edit3,如何使用case语言依次判断输入eidt的值是否为空,谢谢。

解决方案 »

  1.   

    //好象是猜谜,参考如下代码
    begin
      case
        1 * Ord(Edit1.Text = '') + Ord(Edit1.Text <> '') *
          (2 * Ord(Edit2.Text = '') +
            (3 * Ord(Edit2.Text <> '') * Ord(Edit3.Text = ''))) of
        1: Caption := 'Edit1.Text为空';
        2: Caption := 'Edit2.Text为空';
        3: Caption := 'Edit3.Text为空';
      end;
    end;//实际上,用if更清楚、更高效
      

  2.   

    case tt of
      1 : begin  ... end;
      2 : begin  ... end;
      3 : begin  ... end;
      4 : begin  ... end;
    end;
      

  3.   

    在其中一个TEdit控件中写代码,将后将剩除的TEdit的事件指向它(在属性中设置或写代码赋值)如:
    在窗体中放入一个TListBox控件,然后放入多个TEdit控件,再在其中一个中写入以下事件:
    procedure TForm1.Edit1Click(Sender: TObject);
    begin
      self.ListBox1.Items.Add((Sender as TEdit).Name);
    end;将其它TEdit的OnChick事件在属性中设为指向Edit1Click
      

  4.   

    for i:=0 to ComponentCount-1 do
        if Components[i] is TEdit then
        case length(TEdit(Components[i]).Text)
        0:begin
            showmessage('Edit1.Text为空');
          end;
        end;
      

  5.   

    不叫语言!
    好象case语言是汇编语言啊!