现在我的单号输入EDIT,只认小写字母,不认大写字母,比如00001a就认。00001A就不认,我要大小写都认,因为我做的软件是根据最后的A。B。C去判断价钱的
可能是下面的代码引起问题,请问是吗
procedure TForm1.Button3Click(Sender: TObject);
begin
  if Trim(self.Edit13.Text) = 'a' then //'a', AnsiLowerCase
    edit4.Text := edit10.Text
  else
    if Trim(self.Edit13.Text) = 'b' then
      edit4.Text := edit11.Text
    else
      if Trim(self.Edit13.Text) = 'c' then
        edit4.Text := edit12.Text;  self.Edit7.Text := floattostr(strtofloat(edit4.Text) * strtofloat(edit5.Text) * strtofloat(edit6.Text));end;

解决方案 »

  1.   

    if upcase(Trim(self.Edit13.Text)) = 'A' 
    就可以了,也就是说先转成大写字母。如果已经是大写字母,则不变。
    其余类推。
      

  2.   

    if lowercase(Trim(Edit13.Text)) = 'a' then 
    我看过你的几个贴子都是self.edit1.text这种格式,其实没必要用self,
    edit1.text这样比较简单
      

  3.   

    procedure TForm1.Button3Click(Sender: TObject);
    begin
      if UpCase(Trim(Edit13.Text)) = 'A' then //'a', AnsiLowerCase
        edit4.Text := edit10.Text
      else
        if UPCase(Trim(Edit13.Text)) = 'B' then
          edit4.Text := edit11.Text
        else
          if UPCase(Trim(Edit13.Text)) = 'C' then
            edit4.Text := edit12.Text;  self.Edit7.Text := floattostr(strtofloat(edit4.Text) * strtofloat(edit5.Text) * strtofloat(edit6.Text));end;
    //改了一改
      

  4.   

    昏倒
    如果你不想用大小写转换函数干脆就这样算了
    if (edit1.text='a' or edit1.text='A') then
    .........
    A和a是两个不同地字符
    最后edit7.textde    
      

  5.   

    你可以设置Edit的输入模式,只接受大写不就可以了?还要这么麻烦?
      

  6.   

    在TEDIT 的property中的CharCase 设置为"ecNormal", 然后在代码上加个LowerCase function来固定小写。
    procedure TForm1.Button3Click(Sender: TObject);
    begin
      if LowerCase(Trim(self.Edit13.Text)) = 'a' then //'a', AnsiLowerCase
        edit4.Text := edit10.Text
      else
        if Trim(self.Edit13.Text) = 'b' then
          edit4.Text := edit11.Text
        else
          if Trim(self.Edit13.Text) = 'c' then
            edit4.Text := edit12.Text;  self.Edit7.Text := floattostr(strtofloat(edit4.Text) * strtofloat(edit5.Text) * strtofloat(edit6.Text));end;