Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.11;
Скачать: CL | DM;

Вниз

В чем ошибка?   Найти похожие ветки 

 
Pipety   (2007-01-27 04:24) [0]

var
  ini:tinifile;
  i:integer;
  str:tstringlist;

...

if (image2.Top >= image3.Top-30) and (image2.Top <= (image3.Top+10)+image3.Height) then begin
  if (image2.left >= image3.left-30) and (image2.left <= (image3.left+10)+image3.width) then begin

     timer1.Enabled:=false;
     Randomize;

     ini:=tinifile.Create(extractfilepath(application.ExeName)+"вопросы.txt");
     str:=tstringlist.Create;
     ini.ReadSections(str);

     form2.label2.Caption:=ini.ReadString(str.Strings[vid],"good","");
     form2.richedit1.lines.Text:=str.Strings[vid];
     form2.Edit1.Text:="";

     if vid < str.Count-1 then begin
     // ничего не делаем
     end else begin

     stoped:=true;
     if label2.Caption = inttostr(str.Count-1) then begin
           form3.label2.Caption:="Вы выиграли!";
           form3.Image2.Picture.LoadFromFile(extractfilepath(application.ExeName)+"/images/good_p3.bmp");
     end else begin
           form3.label2.Caption:="Вы проиграли!";
           form3.Image2.Picture.LoadFromFile(extractfilepath(application.ExeName)+"/images/good_p4.bmp");
     end; // if label2.Caption = in

     form3.ShowModal;

     end; //  if vid < str.Count-1 th
str.Free;
ini.Free;

if  stoped = false then
begin

 form2.showmodal;
 image3.Top:=RandomRange(5,image1.Height-5);
 image3.Left:=RandomRange(5,image1.width-5);

end;   // if  stoped = false then

     timer1.Enabled:=true;
     vid:=vid+1;

  end; //  if (image2.left >= image3.left-30) and (imag
end;   // if (image2.Top >= image3.Top-30) and (image2.Top <= (im


В этом коде проверяетися, "попадает ли"  image2 в image3 и, если попадает, увеличивает счетчик vid на 1. Если vid  str.count-1 (количество вопросов) то показать форму с вопросов str.strings[vid] в противном случае, показать форму form3, но она показывается до того как vid будет равен 3 т.е. она показывается когда равен 3, а надо 4.


 
Loginov Dmitry ©   (2007-01-27 08:28) [1]

> В чем ошибка?


Очевидно, что в логике работы программы. Соответственно следует эту логику подправить.



Страницы: 1 вся ветка

Текущий архив: 2007.02.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
9-1142376183
Такой
2006-03-15 01:43
2007.02.11
Что задаёт ротация в smd-файлах?


3-1164029298
Ольга
2006-11-20 16:28
2007.02.11
Ошибка I/O Error 103 при работе с базой данных Paradox


2-1169458134
daser
2007-01-22 12:28
2007.02.11
Как отловить перемещение по записям в гриде?


15-1169300520
Ngk88
2007-01-20 16:42
2007.02.11
Ошибка "Procedure call of a function"


6-1157461535
Tanya
2006-09-05 17:05
2007.02.11
свой IP