delphi RadioGroup里怎么添加单选按钮啊

我这边不管选中哪个单选按钮,RadioGroup1.ItemIndex得到的都是-1,我是先建了个RadioGroup组件,又把Radio组件拖进RadioGroup里的

呵呵,那显然是错误的。
设置RadioGroup的Items属性,加上几个字符串即可,设置Columns属性,决定其显示几列

或者试试把这两行代码加到form.oncreate句柄中
radioGroup.Items.Commatext:='按钮1,按钮2,按钮3';
radioGroup.columns:=2;
就看到效果了
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-04-08
先中后,点RadioGroup测试按钮,可在标题栏显示选择结果,点清除可以清除选择。
下面上代码,main.xml:

<RadioGroup
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:checkedButton="@+id/b1"
android:id="@+id/RG">
<!--默认选中b1-->
<RadioButton
android:text="1"
android:id="@+id/b1"
/>
<RadioButton
android:text="2"
android:id="@+id/b2"
/>
<RadioButton
android:text="3"
android:id="@+id/b3"
/>
</RadioGroup>
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/show"
android:text="RadioGroup测试"
/>
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/clear"
android:text="清除"
/>

程序代码:

package com.pocketdigi;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RadioButton;
import android.widget.RadioGroup;

public class main extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTitle("RadioGroup测试");
setContentView(R.layout.main);
RGDemo();
}
RadioGroup rg;
RadioButton b1;
RadioButton b2;
RadioButton b3;
public void RGDemo(){
rg=(RadioGroup)findViewById(R.id.RG);
b1=(RadioButton)findViewById(R.id.b1);
b2=(RadioButton)findViewById(R.id.b2);
b3=(RadioButton)findViewById(R.id.b3);
Button clr=(Button)findViewById(R.id.clear);
clr.setOnClickListener(clear);
Button echo=(Button)findViewById(R.id.show);
echo.setOnClickListener(show);
}
private Button.OnClickListener clear=new OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
rg.clearCheck();
setTitle("RadioGroup测试");
}

};
private OnClickListener show=new OnClickListener(){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(b1.isChecked()){
setTitle("1");
}
if(b2.isChecked()){
setTitle("2");
}
if(b3.isChecked()){
setTitle("3");
}
}

};
}

RadioGroup有一个onCheckChangeListener监听器,可以通过监听器的onCheckedChanged方法捕捉到点击事件,onCheckedChanged方法会传入一个int型的checkedId,可以通过对比传入的checkedId和RadioButton的ID,来确定被点中的选项.

rg.setOnCheckedChangeListener(new OnCheckedChangeListener(){

@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
if(checkedId==b1.getId()){
Toast.makeText(main.this,"b1选中", Toast.LENGTH_LONG).show();
}
if(checkedId==b2.getId()){
Toast.makeText(main.this,"b2选中", Toast.LENGTH_LONG).show();
}
if(checkedId==b3.getId()){
Toast.makeText(main.this,"b3选中", Toast.LENGTH_LONG).show();
}

}

});本回答被网友采纳
delphi RadioGroup里怎么添加单选按钮啊
设置RadioGroup的Items属性,加上几个字符串即可,设置Columns属性,决定其显示几列 或者试试把这两行代码加到form.oncreate句柄中 radioGroup.Items.Commatext:='按钮1,按钮2,按钮3';radioGroup.columns:=2;就看到效果了

delphi 中的RadioGroup
然后,其它的RadioButton事件也连到这个按钮上。就是在事件中,找到onclick,在列表中选择你刚刚写代码的RadioButton中。就可以了。你选哪一个,显示的就是这个RadioButton按钮的名字。

tskindata组件是啥 delphi
3.安装 你可以像安装其它控件一样安装这夽控件,其实就这几步:1. 解压缩 Vclskin2.zip 到任意目录 2. 在 Delphi IDE 环境中选择菜单 "File. Open...", 然后找到连接库 vclskindX.dpk, 按着点击Compile按钮。 3. 在 Environment 添加VCLSkin控件所在的路径。 ***1. TSkinData TSkinData ...

相似回答