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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 30.05.2010, 22:14
sheffdop sheffdop вне форума
Прохожий
 
Регистрация: 30.05.2010
Сообщения: 10
Репутация: 10
По умолчанию помогите поправить код

в общем написал я ужас)
Код:
private
procedure otv; //объявление процедуры для произвольного выбора вопроса
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form2: TForm2;
  zachet: Integer;  // счетчик правильных ответов
implementation

uses Unit1, Unit5, Unit6;

{$R *.dfm}

procedure TForm2.otv;
var
r,i: Integer;
ArPanel: array of TControl;
Vis: boolean;
begin
 for i := 0 to Form2.ControlCount -1 do
  if Form2.Controls[i] is TPanel then
    begin
      SetLength(ArPanel, High(ArPanel) + 2);  //Установка размера массива большего на 1
      ArPanel[High(ArPanel)] := Form2.Controls[i];
    end;
Randomize;
  //Фрагмент нужен для того, чтобы не показывать панел второй раз
  Repeat
    r := Random(High(ArPanel) - Low(ArPanel) +1);
    Vis := ArPanel[r].Visible;
    ArPanel[r].Show;
  Until not Vis ;
end;

procedure TForm2.Button2Click(Sender: TObject);
begin
if
    (CheckBox26.Checked=true) and // проверка
    (CheckBox27.Checked=true) and // ответа
    (CheckBox28.Checked=false)and // на
    (CheckBox29.Checked=true) and // верность
    (CheckBox30.Checked=true)
then
     zachet:= zachet+1;
otv;   //произвольный выбор вопроса
end;

procedure TForm2.Button3Click(Sender: TObject);
begin
if (Edit2.Text = 'земельного') and (Edit4.Text = 'кадастра') then
  zachet:= zachet+1;
otv;   //произвольный выбор вопроса
end;

procedure TForm2.Button4Click(Sender: TObject);
begin
if
  ((Edit7.Text = 'количественные') and (Edit8.Text = 'качественные')) or
  ((Edit7.Text = 'количественное') and (Edit8.Text = 'качественное')) or
  ((Edit7.Text = 'качественное') and (Edit8.Text = 'количественное')) or
  ((Edit7.Text = 'качественные') and (Edit8.Text = 'количественные'))
then
  zachet:= zachet+1;
otv;   //произвольный выбор вопроса
end;

procedure TForm2.Button5Click(Sender: TObject);
begin
if (Edit5.Text = 'угодье') or (Edit5.Text = 'угодья') then
  zachet:= zachet+1;
otv;   //произвольный выбор вопроса
end;
end.
каждая кнопка находится на отдельной панели, а на панелях уже расположены остальные компоненты.
проблема в следующем:
код для рандомного выбора панели, который, записан в процедуру не запоминает панели, которые уже были показаны. и можно ли, в той же процедуре сделать так, чтобы при показе определенного количества панелей, выполнялось какое-либо дейтсвие?
Ответить с цитированием
  #2  
Старый 31.05.2010, 08:00
Аватар для Bars1992
Bars1992 Bars1992 вне форума
Активный
 
Регистрация: 24.04.2010
Адрес: Украина, Кременчуг
Сообщения: 249
Репутация: 22
По умолчанию

немог бы ты весь проект выложить тоесть с формой?
__________________
Не твори зла, и жизнь повернется к тебе передом
Ответить с цитированием
  #3  
Старый 31.05.2010, 10:28
sheffdop sheffdop вне форума
Прохожий
 
Регистрация: 30.05.2010
Сообщения: 10
Репутация: 10
По умолчанию

http://slil.ru/29239271
вот выкладываю проект полностью. пожалйста, помогите, а то уже мозг кипит... только не спрашивайте, почему так криво написано)

Последний раз редактировалось sheffdop, 31.05.2010 в 10:33.
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

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