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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.03.2009, 22:14   #11
Levsha100
Заблокирован
Старожил
 
Регистрация: 20.07.2008
Сообщений: 4,032
Радость

Цитата:
Сообщение от Chudo4258 Посмотреть сообщение
Как? Куда?
Я не разу не делал так, даже не имею понятия.

Вот сюда?

или как???
Смотри:
1)Кидаешь на форму компонент TTimer
2)Дважды клацаешь на нем, появляется обработчик события
3)Копируешь туда код
4)Когда надо Включаешь таймер
Код:
Timer1.Enable:=true;
Levsha100 вне форума Ответить с цитированием
Старый 28.03.2009, 22:52   #12
Chudo4258
Форумчанин
 
Аватар для Chudo4258
 
Регистрация: 19.02.2009
Сообщений: 622
По умолчанию

Короче эта задача о блуждающем пьянице.

Там опечатка была, вот вес код:
Код:
Var I, Cv : Integer;
    Z, P, X, X0, H, Y : Integer;
    Stop:boolean; //для остановки рисование

implementation

{$R *.dfm}



procedure TForm1.Button1Click(Sender: TObject);

   Procedure zakras( X , Y : Integer); //закрашавать предыдущие галогки
    begin
     With Image1.canvas do
       begin
         Brush.Style:=bsSolid;
         Pen.Color:=clWhite;
         Brush.Color:=clWhite;
         Rectangle(X , Y , X+20 , Y+20);
        end;
    end;


begin
with image1.Canvas do
begin
 Stop:=false;
 Label1.Caption:='Идет алкаш!!!';
 X := Round(Width/2);
 X0 := X;
 Y := Round(Height/2);
 H := 30; //шаг
 P := 5; // =0,5
 Brush.Color:=clWhite;  //очистка
 FillRect(ClientRect);  //очистка
 Brush.Color:=clBlue;
 Ellipse(X-5,Y-5,X+20,Y+20);
 I:=0;
 Randomize;

 Repeat
  Label1.Caption:='Идет алкаш!!! '+IntToStr(I)+' раз' ;
  Cv:= Random(6500000000);
  Brush.Color:=Cv;
  Pen.Color:=Cv;
  Z := Random(10);

  If Z >= P Then X := X + H
            Else X := X - H;

  //сколько раз вернулся в нач. положение
  If X = X0 Then I := I + 1; 

  Ellipse(X,Y,X+15,Y+15);
  Brush.Color:=ClWhite;
  Pen.Color:=ClWhite;
  TextOut(X,Y-20,'\/');
  application.processmessages;
  sleep(500);
  zakras(X , Y-25);
 Until (X >= Width) Or (X <= 0) Or Stop;
 Label1.Caption:='Пришёл алкаш!!!   Вернулся в начальную точку '+IntToStr(I)+' раз.'  ;
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.Left:=3;
Form1.Top:=100;

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Stop:=true;
end;
Жми на весы!!!

Последний раз редактировалось Chudo4258; 28.03.2009 в 23:18.
Chudo4258 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
На Delphi 7 сделать игру кто хочет стать миллионером в delphi 7 666dart666 Помощь студентам 11 04.11.2010 17:57
Программа-тест в Delphi) скиньте))а то програмку здавать преподу надо,и самой хочется понять Delphi Верчик Помощь студентам 9 02.03.2009 17:46
Delphi. Как нарисовать в Delphi два движущиеся шара с определенной скоростью? redred Общие вопросы Delphi 10 11.12.2007 10:43
Как открыть БД, написанную в Delphi если нf другой машине Delphi нет? dagarik БД в Delphi 7 22.10.2007 17:54
не StringGrid1.Cells[1,1]:='Delphi'; а вот так SG1.C[1,1]:='Delphi' Nemesisking Компоненты Delphi 7 08.09.2007 03:27