delphi的问题1
在主界面中左边竖着添加1个combobox组件,前面1个label组件,caption为这些计算公式的属性(比如接头)。右边一个image1组件,上面一个button1组...
在主界面中左边竖着添加1个combobox组件,前面1个label组件,caption为这些计算公式的属性(比如接头)。右边一个image1组件,上面一个button1组件,下面label3的caotion:请依照图形填写数据。
2、combobox1的items属性为对接/搭接/丁字接/,
我的要求
1)、比如下拉combobox1选择“对接”。单击button1,能链接到我早已做好的form8、选择搭接 能链接到form9等。
2)、form8窗口就是许多的image组件组成的结构图,每张图下面有个Radiobutton组件,选中后再单击窗口最下方的确定按钮,返回主界面,但主界面的image1显示出上一窗口选中的图形。
1、运行下拉combobox1组件的2,进入选择选择图形1(图一的对应公式为P=X*Y)确定之后,界面中间splitter组件的中的X、Y、el9以及后面的edit1、edit2、edit7显示出来,其余隐藏。
选择图形2(图2对应公式P=Q*T) 确定之后,splitter组件中的X变成Q. X(现在是J了)、T、el9以及后面的edit1、edit4、edit7显示,其余隐藏。
2、输入X、Y、el9的值.单击确定,memo1显示对应的公式及其算得的结果(公式比结果大些、黑体,算的结果正常显示)。
3、如果算的的结果比el9.edit7输入的结果小,则label10显示合格,否则为不合格。 展开
2、combobox1的items属性为对接/搭接/丁字接/,
我的要求
1)、比如下拉combobox1选择“对接”。单击button1,能链接到我早已做好的form8、选择搭接 能链接到form9等。
2)、form8窗口就是许多的image组件组成的结构图,每张图下面有个Radiobutton组件,选中后再单击窗口最下方的确定按钮,返回主界面,但主界面的image1显示出上一窗口选中的图形。
1、运行下拉combobox1组件的2,进入选择选择图形1(图一的对应公式为P=X*Y)确定之后,界面中间splitter组件的中的X、Y、el9以及后面的edit1、edit2、edit7显示出来,其余隐藏。
选择图形2(图2对应公式P=Q*T) 确定之后,splitter组件中的X变成Q. X(现在是J了)、T、el9以及后面的edit1、edit4、edit7显示,其余隐藏。
2、输入X、Y、el9的值.单击确定,memo1显示对应的公式及其算得的结果(公式比结果大些、黑体,算的结果正常显示)。
3、如果算的的结果比el9.edit7输入的结果小,则label10显示合格,否则为不合格。 展开
展开全部
//********************************************
//下面的代码是核心!!!!!!!!!!!!!!!!!!!!
//********************************************
//计算
procedure TForm1.Button2Click(Sender: TObject);
var arrsi: Array [1..5] of String; //保存转换后输入框的各个值.
arrss: Array [1..5] of String; //保存公式中的各个值
temp:String;
int_el9:integer;
result:integer;
begin
//判断el9的值
try
int_el9:=strtoint(el9.Text);
except
showmessage('el9输入的不对');
exit;
end;
//计算公式
if guize='1' then //规则: X*Y的方式
begin
temp:=MNFun.SplitStr(gongshi,'=','R'); //取得公式=号右边的值,
arrss[1]:=MNfun.SplitStr(temp,'*','L');
arrss[2]:=MNfun.SplitStr(temp,'*','R');
arrsi[1]:=Tedit(FindComponent('edit'+inttostr(letters.IndexOf(arrss[1])))).Text;
arrsi[2]:=Tedit(FindComponent('edit'+inttostr(letters.IndexOf(arrss[2])))).Text;
try
result:=strtoint(arrsi[1])*strtoint(arrsi[2]);
except
showmessage('计算时候输入的值不对.');
exit;
end;
if (result>int_el9) then label10.Caption:='正常'
else label10.Caption:='不合格';
memo1.Lines.Add(gongshi+' :'+inttostr(result));
end;
if guize='2' then //规则 两个数相加 X+Y
begin
temp:=MNFun.SplitStr(gongshi,'=','R'); //取得公式=号右边的值,
arrss[1]:=MNfun.SplitStr(temp,'+','L');
arrss[2]:=MNfun.SplitStr(temp,'+','R');
arrsi[1]:=Tedit(FindComponent('edit'+inttostr(letters.IndexOf(arrss[1])))).Text;
arrsi[2]:=Tedit(FindComponent('edit'+inttostr(letters.IndexOf(arrss[2])))).Text;
try
result:=strtoint(arrsi[1])+strtoint(arrsi[2]);
except
showmessage('计算时候输入的值不对.');
exit;
end;
if (result>int_el9) then label10.Caption:='正常'
else label10.Caption:='不合格';
memo1.Lines.Add(gongshi+' :'+inttostr(result));
end;
end;
//下面的代码是核心!!!!!!!!!!!!!!!!!!!!
//********************************************
//计算
procedure TForm1.Button2Click(Sender: TObject);
var arrsi: Array [1..5] of String; //保存转换后输入框的各个值.
arrss: Array [1..5] of String; //保存公式中的各个值
temp:String;
int_el9:integer;
result:integer;
begin
//判断el9的值
try
int_el9:=strtoint(el9.Text);
except
showmessage('el9输入的不对');
exit;
end;
//计算公式
if guize='1' then //规则: X*Y的方式
begin
temp:=MNFun.SplitStr(gongshi,'=','R'); //取得公式=号右边的值,
arrss[1]:=MNfun.SplitStr(temp,'*','L');
arrss[2]:=MNfun.SplitStr(temp,'*','R');
arrsi[1]:=Tedit(FindComponent('edit'+inttostr(letters.IndexOf(arrss[1])))).Text;
arrsi[2]:=Tedit(FindComponent('edit'+inttostr(letters.IndexOf(arrss[2])))).Text;
try
result:=strtoint(arrsi[1])*strtoint(arrsi[2]);
except
showmessage('计算时候输入的值不对.');
exit;
end;
if (result>int_el9) then label10.Caption:='正常'
else label10.Caption:='不合格';
memo1.Lines.Add(gongshi+' :'+inttostr(result));
end;
if guize='2' then //规则 两个数相加 X+Y
begin
temp:=MNFun.SplitStr(gongshi,'=','R'); //取得公式=号右边的值,
arrss[1]:=MNfun.SplitStr(temp,'+','L');
arrss[2]:=MNfun.SplitStr(temp,'+','R');
arrsi[1]:=Tedit(FindComponent('edit'+inttostr(letters.IndexOf(arrss[1])))).Text;
arrsi[2]:=Tedit(FindComponent('edit'+inttostr(letters.IndexOf(arrss[2])))).Text;
try
result:=strtoint(arrsi[1])+strtoint(arrsi[2]);
except
showmessage('计算时候输入的值不对.');
exit;
end;
if (result>int_el9) then label10.Caption:='正常'
else label10.Caption:='不合格';
memo1.Lines.Add(gongshi+' :'+inttostr(result));
end;
end;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询