Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.07.2009, 18:59   #1
Яр|/||< (^_^)
LosYear
Форумчанин
 
Аватар для Яр|/||< (^_^)
 
Регистрация: 19.06.2009
Сообщений: 695
Вопрос Создание radiobutton

как сделать чтобы я вводил во что-то имена например:
аня
маня
паша
саша
и т.д
а программа создала радио-кнопки с их именами???
Яр|/||< (^_^) вне форума Ответить с цитированием
Старый 30.07.2009, 19:08   #2
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Ну как то так

Код:
var
  arr: array of String;
begin
  SetLength(arr, N);
  for i := 0 to N - 1 do
    arr[i] := 'Name';

  for i := 0 to N - 1 do
    with TRadioButton.Create(Self) do
    begin
      Name := 'RadioButton'+IntToStr(i);
      Parent := Self;
      Top := i * 20;
      Left := 20;
      WordWrap := true;
      Width := 150;
      Caption := arr[i];
    end;
end;
psycho-coder вне форума Ответить с цитированием
Старый 30.07.2009, 19:13   #3
Яр|/||< (^_^)
LosYear
Форумчанин
 
Аватар для Яр|/||< (^_^)
 
Регистрация: 19.06.2009
Сообщений: 695
По умолчанию

а чтобы например из мемо1 читал можно???
Яр|/||< (^_^) вне форума Ответить с цитированием
Старый 30.07.2009, 19:16   #4
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Можно
Код:
var
  arr: array of String;
begin
  SetLength(arr, N);
  for i := 0 to N - 1 do
    arr[i] := 'Name';

  for i := 0 to N - 1 do
    with TRadioButton.Create(Self) do
    begin
      Name := 'RadioButton'+IntToStr(i);
      Parent := Self;
      Top := i * 20;
      Left := 20;
      WordWrap := true;
      Width := 150;
      Caption := Memo1.Lines.Strings[i];
    end;
end;
psycho-coder вне форума Ответить с цитированием
Старый 30.07.2009, 20:28   #5
Яр|/||< (^_^)
LosYear
Форумчанин
 
Аватар для Яр|/||< (^_^)
 
Регистрация: 19.06.2009
Сообщений: 695
По умолчанию

а какова типа переменные n , i??
и почему у меня эти радио кнопки по левой стенке во всю форму ??

Последний раз редактировалось Яр|/||< (^_^); 30.07.2009 в 20:32.
Яр|/||< (^_^) вне форума Ответить с цитированием
Старый 30.07.2009, 20:55   #6
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Цитата:
Сообщение от Яр|/||< (^_^) Посмотреть сообщение
а какова типа переменные n , i??
Integer

Цитата:
и почему у меня эти радио кнопки по левой стенке во всю форму ??
Потому что так написано в коде

Код:
var
  arr: array of String;
begin
  SetLength(arr, N);
  for i := 0 to N - 1 do
    arr[i] := 'Name';

  for i := 0 to N - 1 do
    with TRadioButton.Create(Self) do
    begin
      Name := 'RadioButton'+IntToStr(i);
      Parent := Self;
      Top := i * 20;
      Left := 20;
      WordWrap := true;
      Width := 150;
      Caption := Memo1.Lines.Strings[i];
    end;
end;
А там как Вам надо, так и прописывайте. У меня вообще изначально было так
Код:
 with TRadioButton.Create(Self) do
        begin
          Name := Prefix+IntToStr(i);
          Parent := Self;
          Top := Panel2.Height+Panel2.Top + (cnt*20) + 5;
          Left := Panel2.Left;
          OnClick := RBClick;
          WordWrap := true;
          Width := Self.ClientWidth - 50;
          Anchors := [akBottom, akRight, akLeft];
        end;
psycho-coder вне форума Ответить с цитированием
Старый 30.07.2009, 22:29   #7
Alter
Старожил
 
Аватар для Alter
 
Регистрация: 06.08.2007
Сообщений: 2,183
По умолчанию

Используйте компонент TRadioGroup, заполняется через свойство Items.
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    RadioGroup1: TRadioGroup;
    Memo1: TMemo;
    procedure Memo1Change(Sender: TObject);
    procedure RadioGroup1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Memo1Change(Sender: TObject);
begin
 RadioGroup1.Items := Memo1.Lines;
end;

procedure TForm1.RadioGroup1Click(Sender: TObject);
var N :Integer;
begin
  N := RadioGroup1.ItemIndex;
 if RadioGroup1.Items.Count>0 then
 begin
  if (N in [0..RadioGroup1.Items.Count-1]) then
   ShowMessage(Format('Выбранна строка: %d'+#13+'Значение: %s', [N, RadioGroup1.Items.Strings[N]]))
  else
   ShowMessage('Пусто!');
 end
  else
 ShowMessage('Пусто!');
end;

end.
Alter вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Radiobutton в Mainmenu beemoto Общие вопросы Delphi 5 28.05.2009 12:18
radiobutton Bon'ka Компоненты Delphi 4 16.05.2009 21:56
RadioButton Pavelok Общие вопросы Delphi 3 14.05.2009 14:05
RadioButton(Delphi) 2009 Помощь студентам 9 09.03.2009 16:03
помощь с radiobutton paralitic Компоненты Delphi 1 06.06.2007 09:15