加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Delphi编辑文本整数:减号错误

发布时间:2020-12-15 09:34:12 所属栏目:大数据 来源:网络整理
导读:嗨,我是Delphi的初学者. 但令我困惑的是我有Edit1.Text 和变量“i”使用StrToInt(Edit1.Text); 一切都好,直到我输入减号 如果我用数字(例如-2)复制/粘贴减号,它就有效 谁能帮我! 此致,奥马尔 解决方法 当您不能100%确定输入字符串可以转换为整数值时,使用
嗨,我是Delphi的初学者.
但令我困惑的是我有Edit1.Text
和变量“i”使用StrToInt(Edit1.Text);
一切都好,直到我输入减号

如果我用数字(例如-2)复制/粘贴减号,它就有效
谁能帮我!
此致,奥马尔

解决方法

当您不能100%确定输入字符串可以转换为整数值时,使用 StrToInt转换函数是不安全的.编辑框是一个不安全的情况.您的转换失败,因为您输入的第一个字符是 – 无法转换为整数的符号.清除编辑框时也会发生同样的情况.要使此转换安全,可以使用 TryStrToInt函数来处理转换异常.你可以这样使用它:

procedure TForm1.Edit1Change(Sender: TObject);
var
  I: Integer;
begin
  // if this function call returns True,the conversion succeeded;
  // when False,the input string couldn't be converted to integer
  if TryStrToInt(Edit1.Text,I) then
  begin
    // the conversion succeeded,so you can work
    // with the I variable here as you need
    I := I + 1;
    ShowMessage('Entered value incremented by 1 equals to: ' + IntToStr(I));
  end;
end;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读