晚上白来了,就是为了这个小问题,可是意然没人理,天哪好惨呀,大侠啊,请出手吧。(0分)

阿波

Unregistered / Unconfirmed
GUEST, unregistred user!
我的桌面上有几个RADIOBUTTON键,我想实现当我选中RADIOBUTTON1时,RICHEDIT中的值是
EDIT2+S。选中RADIOBUTTON2时,RICHEDIT中的值是EDIT3+S,选中RADIOBUTTON3时,RICHEDIT
中的值是EDIT3+S如何实现的,下面是我编写的一段程序,为什么不行啊。
var
k:integer;
s:string;
begin
k:=strtoint(edit1.text);
s:=formatfloat('000000000000',k);
begin
if radiobutton1.checked then
richedit.text:=(edit2.text+s);
if radiobutton2.checked then
richedit.text:=(edit3.Text+s);
if radiobutton3.checked then
richedit.text:=(edit4.text+s);
if radiobutton4.checked then
richedit.text:=(edit5.text+s)
else
richedit.text:=''
end;
 
你写的前面一段代码没什么问题,问题出在最后的IF语句里,按你的代码只要不选择
radiobutton4,那么richedit.text全为空字符串.
 
WDJ118正确
if radiobutton1.checked then
richedit.text:=(edit2.text+s)
else
if radiobutton2.checked then
richedit.text:=(edit3.Text+s)
else
if radiobutton3.checked then
richedit.text:=(edit4.text+s)
else
if radiobutton4.checked then
richedit.text:=(edit5.text+s)
else
richedit.text:=''
 
哈哈,真是白痴,你要问问题完全可以另外申请一个帐号嘛.
没分谁理你?
下次记住了.
 
IF语句的问题。
 
用下面的句子吧,不要再提前了。
procedure TForm1.RadioButton1Click(Sender: TObject);
var
k:integer;
s:string;
begin
k:=strtoint(edit1.text);
s:=formatfloat('000000000000',k);
case (Sender as TRadioButton).tag of
0:
richedit1.text:=(edit1.text+s);
1:
richedit1.text:=(edit2.Text+s);
2:
richedit1.text:=(edit3.text+s);
3:
richedit1.text:=(edit4.text+s)
else
richedit1.text:=''
end;
end;
 
接受答案了.
 
顶部