Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > RadioGroup


Автор: ivan219 17.9.2006, 14:42
Имеем во это
http://imageshack.us

Как зделать так чтоб было вот так smile т.е. чтоб было по середине smile 
http://imageshack.us

Автор: VitalikOmsk 18.9.2006, 11:37
а почему рисунки одинаковые

Автор: Yanis 18.9.2006, 11:41
Цитата(VitalikOmsk @  18.9.2006,  12:37 Найти цитируемый пост)
а почему рисунки одинаковые

Потому что читать нужно внимательнее smile

ivan219
Нужно просто получить доступ ко всем кнопкам и просто путём несложных вычислений расположить их посерединке. Доступ осуществляется так:
Код
(RadioGroup1.Components[0] as TRadioButton).Left

Автор: Romikgy 18.9.2006, 11:42
ivan219, имхо простейшее это сдвинуть правую сторону, так что б вышло семетрично

Автор: ivan219 18.9.2006, 17:47
Romikgy уменя RadioGroup там их так просто не здвиниш.

Yanis спасибо попробую.

Yanis а если всё это дело заложить в компонент немного подкоректировав код как думаеш получится smile 

Автор: ivan219 18.9.2006, 19:21
Всё получилось smile 
Код

procedure TForm1.FormCreate(Sender: TObject);
var
   X,Y:Integer;
begin
 X:=RadioGroup1.Width div 2-6;
 Y:=X div 2+35;
(RadioGroup1.Components[0] as TRadioButton).Left:=X-Y;
(RadioGroup1.Components[1] as TRadioButton).Left:=X;
(RadioGroup1.Components[2] as TRadioButton).Left:=X+Y;
end;


http://img226.imageshack.us/my.php?image=imagevf7.gif


Yanis +1

Автор: shatalinalex 18.10.2006, 10:52
У меня тоже вопрос по этому компоненту! Как добраться до свойства checked !? Уобычного radiobutton rad.checked:=true и все! а тут как?

Автор: Reptile 18.10.2006, 11:16
Цитата

Как добраться до свойства checked !? 

А сдесь обращайся так:
Код

 RadioGroup1.ItemIndex

Первый начинается с 0 smile

Автор: shatalinalex 18.10.2006, 13:13
Код

if RadioGroup1.ItemIndex[0].checked = true then
  begin

  end; 


Вот так пишу! подчеркивает что неправильно! он вообще после RadioGroup1.ItemIndex[0] не раскрывает список функций и свойств.

Автор: Reptile 18.10.2006, 13:19
Я наверно не правильно обьяснил  smile 
Надо:
 
Код

if RadioGroup1.ItemIndex = 0 then
  begin

  end; 

Автор: Romikgy 18.10.2006, 13:19
Код

procedure TForm1.FormCreate(Sender: TObject);

begin
  RadioGroup1.Items.Add('Vertical');
  RadioGroup1.Items.Add('Horizontal');
  RadioGroup1.ItemIndex := 2;
end;

procedure TForm1.RadioGroup1Click(Sender: TObject);

begin
  if RadioGroup1.Items[RadioGroup1.ItemIndex] = 'Vertical' then
    ScrollBar1.Kind := sbVertical;
  if RadioGroup1.Items[RadioGroup1.ItemIndex] = 'Horizontal' then
    ScrollBar1.Kind := sbHorizontal;

end;

Автор: ivan219 18.10.2006, 13:20
Код

case RadioGroup1.ItemIndex of
        0:;
        1:;
         .
         .
end;

Автор: shatalinalex 18.10.2006, 13:38
Ок, спасибо понял!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)