Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Delphi .NET
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 11.06.2010, 13:16
Safron Safron вне форума
Прохожий
 
Регистрация: 11.06.2010
Сообщения: 1
Репутация: 10
По умолчанию PascalABC.net

Всем привет! Сделал на PascalABC.net заготовку для теста с помощью system.windows.forms.
Но у меня проблемка небольшая есть...
Вобщем, у меня задается вопрос через label и, с помощью четырех переключателей (RadioButton), я могу выбрать один вариант ответа и если вариант ответа правильный, то переменной ''pr'' будет присвоено значение pr:=pr+1 (для того, чтобы в конце теста подсчитать кол-во правильных ответов). Но вот проблема, собственно, в том, что при выборе правильного ответа переменной ''pr'' не присвается значение +1. Судя по всему, это потому что при выборе верного переключателя, переключателю не присваивается значениу "true".

Помогите, пожалуйста, исправить.

Вот, собственно, сам код:

Код:
#apptype windows
#reference 'System.Windows.Forms.dll'
#reference 'System.Drawing.dll'

uses
  system, System.Windows.Forms;

var
  pr:=0;
  otv:System.Windows.Forms.Button;
  st: System.Windows.Forms.Button;
  MyForm: System.Windows.Forms.Form;
  But: System.Windows.Forms.Button;
  Lab: System.Windows.Forms.Label;
  Lab2: System.Windows.Forms.Label;
  Rad1: System.Windows.Forms.RadioButton;    \\Описание переключателей
  Rad2: System.Windows.Forms.RadioButton;     \\Описание переключателей
  Rad3: System.Windows.Forms.RadioButton;     \\Описание переключателей
  Rad4: System.Windows.Forms.RadioButton;     \\Описание переключателей

  
  \\ Процедура создания второго вопроса
   Procedure ButtonClick2(sender: object; e: EventArgs);
  begin
   Lab2.Show;
   Lab2.Text:=IntToStr(pr); \\ Должен вывести переменную (pr), но не зависимо от выбора ответа, записывает 0.
   lab.Text:='Вопрос 2';
   Rad1.Text:='1';
   Rad2.Text:='2';
   Rad3.Text:='3';
   Rad4.Text:='4';
   end;
  \\ Процедура создания первого вопроса
 Procedure ButtonClick(sender: object; e: EventArgs);  
  begin
  But.Show;
  st.Hide;
  otv.Hide;
  Lab.Show;
  Rad1.Show;
  Rad2.Show;
  Rad3.Show;
  Rad4.Show;
  Lab.Text:='Вопрос 1';
  Rad1.Text:='1';
  Rad2.Text:='2';
  Rad3.Text:='3';
  Rad4.Text:='4';
  If Rad2.Checked=true then   \\Если выбран второй переклчатель, то
  pr:=pr+1;                           \\Присвоить переменной +1
  But.Click+=ButtonClick2          \\Переходим к процедуре второго вопроса
 end;

begin      \\Тело создания формы     
 begin
 pr:=0;   \\Присваиваем pr значение 0
 MyForm := System.Windows.Forms.Form.Create;
 MyForm.text := 'Форма';
 MyForm.Height := 400;
 MyForm.Width := 600;
  St:=new Button;
  St.Text:= 'Начать тест';
  St.Width:=200;
  St.Height:=100;
  St.Left:=200;
  St.Top:=100;
  MyForm.Controls.Add(St);
   But := new Button;
   But.Text := 'Далее';
   But.Width:=100;
   But.Left := 450;
   But.Top := 300;
   But.Hide;
   MyForm.Controls.Add(But);
    Lab:=System.Windows.Forms.Label.Create;
    Lab.text:='11111';
    Lab.Left:=50;
    Lab.Top:=20;
    Lab.Width:=500;
    Lab.Height:=50;
    Lab.Hide;
    MyForm.Controls.Add(Lab);
\\Создание переключателя №1
     Rad1:=System.Windows.Forms.RadioButton.Create; 
     Rad1.Width:=200;
     Rad1.Text:='1 ответ//////////////////';
     Rad1.Left:=100;
     Rad1.Top:=70;
     Rad1.Hide;
     MyForm.Controls.Add(Rad1);
\\Создание переключателя №2
      Rad2:=System.Windows.Forms.RadioButton.Create;
      Rad2.Width:=200;
      Rad2.Text:='1 ответ//////////////////';
      Rad2.Left:=100;
      Rad2.Top:=100;
      Rad2.Hide;
      MyForm.Controls.Add(Rad2);
\\Создание переключателя №3
       Rad3:=System.Windows.Forms.RadioButton.Create;
       Rad3.Width:=200;
       Rad3.Text:='1 ответ//////////////////';
       Rad3.Left:=100;
       Rad3.Top:=130;
       Rad3.Hide;
       MyForm.Controls.Add(Rad3);
\\Создание переключателя №4
        Rad4:=System.Windows.Forms.RadioButton.Create;
        Rad4.Width:=200;
        Rad4.Text:='1 ответ//////////////////';
        Rad4.Left:=100;
        Rad4.Top:=160;
        Rad4.Hide;
        MyForm.Controls.Add(Rad4);
         otv:=new Button;
         otv.Left:=400;
         otv.Top:=200;
         otv.Text:='Выбрать';
         otv.Hide;
         MyForm.Controls.Add(otv);
          Lab2:= System.Windows.Forms.Label.Create;
          Lab2.Width:=200;
          Lab2.Height:=100;
          Lab2.Left:=350;
          Lab2.Top:=80;
          Lab2.Text:='fffffffffff';
          Lab2.Hide;
          MyForm.Controls.Add(Lab2);

           begin
        St.Click += ButtonClick; \\ Переходим к процедуре первого вопроса
        end;
        end;
      begin
      Application.Run(MyForm)  
      end;
end.
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 19:43.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter