Нужен человек, который шарит в Delphi

Автор Bot, 02 февраля 2006, 21:22:35

0 Пользователи и 1 Гость просматривают эту тему.

Bot

Нужен человек, который шарит в Delphi.

Есть примитивная программулина, которая написана уже. Почти работает, но вылетает несколько странных ошибок. Прошу откликнуться. Мат. или пивное вознаграждение гарантирую.

Вопрос актуален только сегодня.

Аська 101074

Не давай убаюкать себя похвалой -
Меч судьбы занесен над твоей головой.
Как ни сладостна слава, но яд наготове
У судьбы. Берегись отравиться халвой.

Омар Хайям

x3mal


Bot

#2
Следующий... :))))
Не давай убаюкать себя похвалой -
Меч судьбы занесен над твоей головой.
Как ни сладостна слава, но яд наготове
У судьбы. Берегись отравиться халвой.

Омар Хайям

Morgan.

------------------------------------------------------------------------
 Воля - это то, что заставляет тебя побеждать, когда твой рассудок говорит тебе, что ты повержен.
------------------------------------------------------------------------
Учись так, как будто тебе предстоит жить вечно; живи так, как будто тебе предстоит умереть завтра.
------------------------------------------------------------------------

Bot

192.168.74.2/proj
Отдел ПУ - > любые варианты ответов - выход. (увидишь ошибку раз)

Иногда выдается пустое поле вместо вопроса.
Почему - не знаю.

Текст кнопки "принять"


procedure TForm1.BitBtn1Click(Sender: TObject);
begin
{проверка на выбор ответа. Начало}
IF RadioButton1.Checked=True then
   Begin
   VARIANT:=1;
   RadioButton1.Checked:=False;
   VIBOR:=true;
   End else
   if RadioButton2.Checked=True then
   Begin
   VARIANT:=2;
   RadioButton2.Checked:=False;
   VIBOR:=true;
   End else
   if RadioButton3.Checked=True then
   Begin
   VARIANT:=3;
   RadioButton3.Checked:=False;
   VIBOR:=true;
   End else
   if RadioButton4.Checked=True then
   Begin
   VARIANT:=4;
   RadioButton4.Checked:=False;
   VIBOR:=true;
   End else
   Begin
   ShowMessage('Не выбран ни один вариант ответа!');
   VIBOR:=false;
   end;
{проверка на выбор ответа. Конец}

{Загрузка оценки. Начало}
If VIBOR=true then
begin
IniFile:=TIniFile.Create(FAYL);
IF VARIANT=IniFile.ReadInteger(QUES,'A',0) then OCENKA:=OCENKA+1 else Error:=Error+'Вопрос №'+IntToStr(N)+Chr(13)+Chr(10)+IniFile.ReadString(QUES,'Q','')+Chr(13)+Chr(10)+'Правильный ответ "'+IniFile.ReadString(QUES,'V'+IntToStr(IniFile.ReadInteger(QUES,'A',0)),'Вариант')+'"'+Chr(10)+Chr(13);
N:=N+1;
{Загрузка оценки. Конец}

{проверка на повтор вопроса. Начало}
imas:=imas+1;
Rep:=true;
while Rep=true do
begin
 Rep:=false;
 i:=0;
 repeat
  if StrToInt(QUES)=MassivSluch[i] then Rep:=true;
  i:=i+1;
  until (Rep=true) or (i=Vopr+1);
 if Rep=true then QUES:=IntToStr(1+Random(kolvo));
end;
MassivSluch[imas]:=StrToInt(QUES);
{проверка на повтор вопроса. Конец}

Label1.Caption:='Вопрос №'+IntToStr(N)+'.'+Chr(32)+IniFile.ReadString(QUES,'Q','');
if IniFile.ReadString(QUES,'V1','')<>'' then
 begin
  RadioButton1.Caption:=IniFile.ReadString(QUES,'V1','');
  RadioButton1.Visible:=true;
  end else RadioButton1.Visible:=false;
if IniFile.ReadString(QUES,'V2','')<>'' then
 begin
  RadioButton2.Caption:=IniFile.ReadString(QUES,'V2','');
  RadioButton2.Visible:=true;
 end else RadioButton2.Visible:=false;
if IniFile.ReadString(QUES,'V3','')<>'' then
 begin
  RadioButton3.Caption:=IniFile.ReadString(QUES,'V3','');
  RadioButton3.Visible:=true;
 end else RadioButton3.Visible:=false;
if IniFile.ReadString(QUES,'V4','')<>'' then
 begin
  RadioButton4.Caption:=IniFile.ReadString(QUES,'V4','');
  RadioButton4.Visible:=true;
 end else RadioButton4.Visible:=false;

end;
if (N=Vopr+1) then
   begin
   Panel1.Visible:=true;
   Panel2.Visible:=false;
   Panel3.Visible:=false;
   Panel4.Visible:=false;
   RichEdit1.Text:='Благодарим за прохождение теста,'+Chr(32)+Edit1.Text+'! Вы правильно ответили на'+Chr(32)+IntToStr(OCENKA)+Chr(32)+'вопросов из'+Chr(32)+IntToStr(N-1)+Chr(32)+'.'+Chr(13)+Chr(10);
   If Error='' then RichEdit1.Text:=RichEdit1.Text+'Поздравляем! Вы не совершили ни одной ошибки!' else RichEdit1.Text:=RichEdit1.Text+'Вы ответили неправильно на вопросы:'+Chr(13)+Chr(10)+Error+Chr(13)+Chr(10)+Chr(13)+Chr(10);
   Finita:=Time;
   IniFile.Free;
   end;

end;
Не давай убаюкать себя похвалой -
Меч судьбы занесен над твоей головой.
Как ни сладостна слава, но яд наготове
У судьбы. Берегись отравиться халвой.

Омар Хайям

Bot

Проблема решена. Спасибо Digger'у!   :x:
Админ 4ever!
Не давай убаюкать себя похвалой -
Меч судьбы занесен над твоей головой.
Как ни сладостна слава, но яд наготове
У судьбы. Берегись отравиться халвой.

Омар Хайям