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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.12.2014, 22:12   #1
!2marselo12
Пользователь
 
Регистрация: 04.12.2014
Сообщений: 20
По умолчанию тест в delphi

в общем , разместил на одну панель радиогруппы. сделал их всех невидимыми. Добавил button1. И у меня не получается оператор If.
Например, мы нажали на кнопку и если radiogroup1 visible=true , то мы делаем её невидимой и следующая радиогруп становится видимой.
Помогите
!2marselo12 вне форума Ответить с цитированием
Старый 04.12.2014, 22:20   #2
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Так сколько всего радиогруп?
Iron Monk вне форума Ответить с цитированием
Старый 04.12.2014, 22:26   #3
!2marselo12
Пользователь
 
Регистрация: 04.12.2014
Сообщений: 20
По умолчанию

Цитата:
Сообщение от Iron Monk Посмотреть сообщение
Так сколько всего радиогруп?
пока 5, планирую около 10
!2marselo12 вне форума Ответить с цитированием
Старый 04.12.2014, 22:35   #4
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Если с if
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
    if RadioGroup5.Visible then
      begin
      RadioGroup5.Visible:= false;
      RadioGroup1.Visible:= true;
      end else
        if RadioGroup4.Visible then
          begin
          RadioGroup4.Visible:= false;
          RadioGroup5.Visible:= true;
          end else
            if RadioGroup3.Visible then
              begin
              RadioGroup3.Visible:= false;
              RadioGroup4.Visible:= true;
              end else
                if RadioGroup2.Visible then
                  begin
                  RadioGroup2.Visible:= false;
                  RadioGroup3.Visible:= true;
                  end else
                    if RadioGroup1.Visible then
                      begin
                      RadioGroup1.Visible:= false;
                      RadioGroup2.Visible:= true;
                      end else
                        RadioGroup1.Visible:= true;
end;
end.
Iron Monk вне форума Ответить с цитированием
Старый 04.12.2014, 22:38   #5
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Не понял, как надо.
Нажал Button - стала видимая 1-я RG (остальные невидимые), нажал еще раз - видимая 2-я RG (остальные невидимые), и т.д.
Так ?
type_Oleg вне форума Ответить с цитированием
Старый 04.12.2014, 22:51   #6
!2marselo12
Пользователь
 
Регистрация: 04.12.2014
Сообщений: 20
По умолчанию

Цитата:
Сообщение от type_Oleg Посмотреть сообщение
Не понял, как надо.
Нажал Button - стала видимая 1-я RG (остальные невидимые), нажал еще раз - видимая 2-я RG (остальные невидимые), и т.д.
Так ?
у меня компонент мэйн меню. если я нажимаю вторую вкладку то 1 радиоогруп становится видимой(хотя в свойствах она невидимая)

Цитата:
Сообщение от Iron Monk Посмотреть сообщение
Если с if
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
    if RadioGroup5.Visible then
      begin
      RadioGroup5.Visible:= false;
      RadioGroup1.Visible:= true;
      end else
        if RadioGroup4.Visible then
          begin
          RadioGroup4.Visible:= false;
          RadioGroup5.Visible:= true;
          end else
            if RadioGroup3.Visible then
              begin
              RadioGroup3.Visible:= false;
              RadioGroup4.Visible:= true;
              end else
                if RadioGroup2.Visible then
                  begin
                  RadioGroup2.Visible:= false;
                  RadioGroup3.Visible:= true;
                  end else
                    if RadioGroup1.Visible then
                      begin
                      RadioGroup1.Visible:= false;
                      RadioGroup2.Visible:= true;
                      end else
                        RadioGroup1.Visible:= true;
end;
end.
Спасибо большое!

Последний раз редактировалось Stilet; 05.12.2014 в 07:54.
!2marselo12 вне форума Ответить с цитированием
Старый 04.12.2014, 23:46   #7
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Если много однотипных контролов и будут еще добавляться - проще пронумеровать Tag всех RadioGroup и описать процедуру:
Код:
var
n: integer = 1;

procedure TForm1._pRg(i: integer);
var
m: integer;
begin
    for m:= 0 to ControlCount - 1 do
         if  (Components[m]).Tag = i then
              TRadioGroup(Components[m]).Visible:= true
         else (Components[m] as TRadioGroup).Hide;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
    _pRg(n);
   if n = 5 then n:= 0;
   inc(n);
end;
end.

Последний раз редактировалось Iron Monk; 04.12.2014 в 23:48.
Iron Monk вне форума Ответить с цитированием
Старый 05.12.2014, 12:16   #8
exyl
Пользователь
 
Регистрация: 15.11.2014
Сообщений: 75
По умолчанию

Я бы сделал через PageControl, в креэйте формы убрав в цикле видимые ярлычки у страниц, а по нажатию кнопки вызывая NextPage.
exyl вне форума Ответить с цитированием
Старый 05.12.2014, 12:23   #9
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Цитата:
Сообщение от exyl Посмотреть сообщение
Я бы сделал через PageControl, в креэйте формы убрав в цикле видимые ярлычки у страниц, а по нажатию кнопки вызывая NextPage.
Я от лени своей природной в тесте использовал бы только один RadioGroup. И массивы заданий менял.
Iron Monk вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Тест в Delphi 7 Ербулат Общие вопросы Delphi 3 13.06.2012 13:32
Тест на Delphi Nord18 Помощь студентам 4 29.03.2011 16:03
Тест. Delphi KitoPoni Помощь студентам 2 20.01.2011 12:43
тест в delphi nenuphar Помощь студентам 4 27.11.2009 17:57
Программа-тест в Delphi) скиньте))а то програмку здавать преподу надо,и самой хочется понять Delphi Верчик Помощь студентам 9 02.03.2009 17:46