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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.11.2011, 13:01   #1
Kelthagor
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 17
По умолчанию RadioButton.caption и Random

Вопрос вызывается нажатием кнопки, при каждом создании формы вопросы показываются в случайном порядке, текст в кэпшоны подгружается при нажатии кнопки,как организовать чтобы при нажатии кнопки, кэпшоны у радибатоннов менялись местами (без повторений) ?

Код:
procedure TForm2.Button1Click(Sender: TObject);
begin
if RadioButton2.Checked= true then
ball:= ball+1;


Label1.Caption:='Впервые термин "информатика" возник в';
RadioButton1.Caption:= 'в 60-х годах в Англии';
RadioButton2.Caption:= 'в 60-х годах во Франции';
RadioButton3.Caption:= 'в 80-х годах в Германии';

Button1.Visible:= false;
Button2.Top:= Button1.Top;
Button2.Left:= Button1.Left;
Button2.Visible:= true;
num:= num+1;
Label3.Caption:= IntToStr(num);

Label2.Caption:= IntToStr(ball);
Label5.Caption:= 'Вопрос №' + IntToStr(num);
Button1.Enabled:=False;
end;

________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 12.11.2011 в 18:24.
Kelthagor вне форума Ответить с цитированием
Старый 12.11.2011, 13:10   #2
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Например, заведите массив строк на три элемента, в каждый из которых поместите строки для ваших "капшонов". После этого массив перемешайте случайным образом, а потом:
Код:
RadioButton1.Caption:= a[1];
RadioButton2.Caption:= a[2];
RadioButton3.Caption:= a[3];
Вадим Мошев вне форума Ответить с цитированием
Старый 12.11.2011, 14:52   #3
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,871
По умолчанию

убирать повторы лучше всего в цикле: пусть перебирает варианты, пока не найдёт тот, которго ещё не было.
массив ms[i] содердит только 3 значения:0 - этого вопроса ещё не было, 1 - этот вопрос загружен сейчас и 2 - этот вопрос уже был.

Код:
Randomize;
repeat
    sn:=random(5)+1;//скажем, от 1 до 5 вопросов надо вывести
    if(ms[sn]=1)then ms[sn]:=2;//уже был
    if(ms[sn]=0)then ms[sn]:=1;//ещё не был
until ms[sn]=1;
   //----- если этого вопроса раньше не было, то выводим  ----------------------
   if(ms[sn]=1)then
   begin
      ...//вот тут показываем формы, кнопки, флажки и метки...
   end;
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.

Последний раз редактировалось NetSpace; 12.11.2011 в 15:01.
NetSpace вне форума Ответить с цитированием
Старый 12.11.2011, 16:07   #4
Kelthagor
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 17
По умолчанию

Все это слишком сложно для моего понимания. Куда ответы присваивать, где и какие переменные объявлять, какого типа... я ничего не понимаю

Последний раз редактировалось Kelthagor; 12.11.2011 в 16:09.
Kelthagor вне форума Ответить с цитированием
Старый 12.11.2011, 18:52   #5
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,871
По умолчанию

Код:
ms:array[1..5] of Byte;
и в самом начале программы присваиваете им всем значение 0
Код:
for i:=1 to 5 do ms[i]:=0;
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Caption в ToolBar maxefficiently Помощь студентам 1 24.01.2012 02:51
n.caption romanzi Общие вопросы Delphi 3 19.08.2011 11:50
Изменить Caption Joystik Общие вопросы Delphi 10 07.05.2010 10:15
отюникодить Caption iiunbreakableii Общие вопросы Delphi 4 04.06.2009 09:16
caption в цыкле nikleb Общие вопросы Delphi 3 18.04.2008 15:23