我在对课程信息进行模糊查询时 由于combobox3, combobox4里的数据是integer
我就这样写
procedure..............
var l_plan_hour,l_study_grade:string;
begin
l_plan_hour:=strtoint(combobox3.text); //变量赋值
l_study_grade:=strtoint(combobox4.text);
...........
程序执行的时候报错 'is not a valid integer value' 这是怎么回事啊??
我就这样写
procedure..............
var l_plan_hour,l_study_grade:string;
begin
l_plan_hour:=strtoint(combobox3.text); //变量赋值
l_study_grade:=strtoint(combobox4.text);
...........
程序执行的时候报错 'is not a valid integer value' 这是怎么回事啊??
而strtoint是转化为integer型数据的
当然出错啦~~改为:
l_plan_hour:=combobox3.text; //变量赋值
l_study_grade:=combobox4.text;
var l_plan_hour,l_study_grade:integer;
begin
l_plan_hour:=strtoint(combobox3.text); //变量赋值
l_study_grade:=strtoint(combobox4.text);
...........
程序执行的时候报错 'is not a valid integer value' 这是怎么回事啊??
不好意思啊 我定义的是integer 写错了 再帮帮忙吧!
当TComboBox里的值不是数字时就会产生现在出现的这个异常
不是有效的Integer数据
您可以这样处理
var
l_plan_hour,l_study_grade:string;
begin
try
l_plan_hour:=strtoint(combobox3.text); //变量赋值
l_study_grade:=strtoint(combobox4.text);
except
ShowMessage('类型不匹配!');
end;
end;
再不行就Q我吧。39209814
改为
l_plan_hour,l_study_grade:Integer;
begin
l_plan_hour是字符串
strtoint(combobox3.text);把字符串变成了整形,怎么可能附值
应该改成 l_plan_hour:=combobox3.text;
plan_hour,study_grade:integer;
begin
l_plan_hour:=combobox3.text; //变量赋值
l_study_grade:=combobox4.text;
plan_hour:=strtoint(l_plan_hour);
study_grade:=strtoint(l_study_grade);这样得到的是整型了,应该没问题, 如果这样做strtoint(combobox3.text);肯定会报错;
直接赋值就可以了!