我的radiogroup中有五个项,在某些条件下,我只想让其中几项可选,也就是让其他的enable=false,该如何实现,在线等

解决方案 »

  1.   

      
      if condition=1 then 
        begin
           radiobutton1.enable=false;
        end
      else if condition=2 then
        begin
           radiobutton2.enable=false;
        end
      else if condition=3 then
        begin
           radiobutton3.enable=false;
        end
      .
      .
      .
      .
      
      

  2.   

      radiogroup里面你不放radiobutton?
      

  3.   

      你那5个项,肯定是5个radiobutton吧。难道不是?
      

  4.   

    这个简单代码给你参考。下班。unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
      StdCtrls, ExtCtrls;type
      TForm1 = class(TForm)
        Button1: TButton;
        Button2: TButton;
        Button3: TButton;
        Button4: TButton;
        Button5: TButton;
        RadioGroup1: TRadioGroup;
        RadioButton1: TRadioButton;
        RadioButton2: TRadioButton;
        RadioButton3: TRadioButton;
        RadioButton4: TRadioButton;
        RadioButton5: TRadioButton;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        procedure Button3Click(Sender: TObject);
        procedure Button4Click(Sender: TObject);
        procedure Button5Click(Sender: TObject);
      private
        Fcondition:integer;
        procedure setcondition(const Value: integer);
        { Private declarations }
      public
        { Public declarations }
        property check:integer read Fcondition write setcondition;
      end;var
      Form1: TForm1;implementation{$R *.DFM}procedure TForm1.setcondition(const Value: integer);
    begin
      if Fcondition <> Value then
      begin
        Fcondition:=Value;
        if Value=1 then
          begin
             radiobutton1.Enabled:=false;
             radiobutton2.Enabled:=true;
             radiobutton3.Enabled:=true;
             radiobutton4.Enabled:=true;
             radiobutton5.Enabled:=true;
          end
        else if Value=2 then
          begin
             radiobutton2.Enabled:=false;
             radiobutton1.Enabled:=true;
             radiobutton3.Enabled:=true;
             radiobutton4.Enabled:=true;
             radiobutton5.Enabled:=true;      end
        else if Value=3 then
          begin
            radiobutton3.Enabled:=false;
            radiobutton2.Enabled:=true;
             radiobutton1.Enabled:=true;
             radiobutton4.Enabled:=true;
             radiobutton5.Enabled:=true;
          end
          else if Value=4 then
          begin
             radiobutton4.Enabled:=false;
             radiobutton1.Enabled:=true;
             radiobutton2.Enabled:=true;
             radiobutton3.Enabled:=true;
             radiobutton5.Enabled:=true;      end
        else if Value=5 then
          begin
             radiobutton5.Enabled:=false;
             radiobutton1.Enabled:=true;
             radiobutton2.Enabled:=true;
             radiobutton3.Enabled:=true;
             radiobutton4.Enabled:=true;
          end;
      end;
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
      check:=1;
    end;procedure TForm1.Button2Click(Sender: TObject);
    begin
      check:=2;
    end;procedure TForm1.Button3Click(Sender: TObject);
    begin
      check:=3;
    end;procedure TForm1.Button4Click(Sender: TObject);
    begin
      check:=4;
    end;procedure TForm1.Button5Click(Sender: TObject);
    begin
     check:=5;
    end;end.
      

  5.   

    RadioGroup1里的按钮不是一个个的
      

  6.   

      RadioGroup1.Buttons[RadioGroup1.ItemIndex].Enabled := False;
      

  7.   

    闲着没事,给你做了一下,delphi6下通过procedure TForm1.Button1Click(Sender: TObject);
    begin
       //在RadioGroup1上没有其它控件的情况下使用,如果有其它控件的话,还要作下判断
      (RadioGroup1.Controls[1] as TRadioButton).Enabled:=false;//禁止第二个
      (RadioGroup1.Controls[2] as TRadioButton).Enabled:=false;//禁止第三个
    end;
      

  8.   


    //更通用一点的可以这样
    procedure TForm1.SetEnalbed(index: integer; Enabled: boolean);
    begin
       (RadioGroup1.Controls[index] as TRadioButton).Enabled:=Enabled;
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
       //这里你可以加条件判断,应该让哪个禁止或使能,
       //我这里只简单举了个例子
       SetEnalbed(1,false);
       SetEnalbed(2,false);
    end;
      

  9.   

    正如9楼,直接判断其RadioGroup的Controls--index...