Показать сообщение отдельно
  #5  
Старый 11.12.2010, 11:06
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,097
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну, собственно, ответ тебе почти дали.
Расстановка Tag'ов в нужном порядке, далее по текущему находим следующий (цикл по всем компонентам) и делаем его Checked.
вообще, если радиокнопки создаются динамисески, то можно просто при создании запихать их в массив и дальше работать с этим массивом:

Код:
type
  TForm1=class(TForm)
  private
    FButtons : TObjectList;
  end;
...
procedure TForm1.FormCreate(Sender : TObject);
begin
  FButtons := TObjectList.Create(False);
end;

procedure TForm1.CreateRB(N : Integer);
var
  I : Integer;
  B : TRadioButton;
begin
  FButtons.Clear;
  For I := 1 To N Do
    Begin
       B := TRadioButton.Create(Self);
       B.Top := I * 10;
       B.Left := 10;
       FButtons.Add(B);
       B.Parent := GroupBox1;
    End;
  (FButtons[0] As TRadioButton).Checked := True;
end;

procedure TForm1.Button1Click(Sender  : TObject);
var
  I : Integer;
begin
  For I := 0 To FButtons.Count-1 Do
    If (FButtons[i] As TRadioButton).Checked Then
      Begin
        If I < FButtons.Count-1 
          Then (FButtons[I+1] As TRadioButton).Checked := True 
          Else (FButtons[0] As TRadioButton).Checked := True 
      End;
end;
Ответить с цитированием