Пример: Хранитель экрана

В этом примере показано, как создать простой хранитель экрана, в котором MIDlet-иконка движется, отражаясь от краев экрана.

program ScreenSaver; 

const up    = 1; // эти константы определяют направление
      down  = 0; // движения иконки
      left  = 1; 
      right = 0; 

var x, y      : integer; // текущая позиция левого верхнего угла иконки 
    img       : image;   // хэндлер графического объекта
    direction_x, 
    direction_y  : integer; // направления перемещения 
      
begin 
  img := loadImage('/icon.png'); 
   
  repeat 
    // двигаем иконку в соответствии с текущим направлением
    if  direction_y = up    then y := y - 1; 
    if  direction_y = down  then y := y + 1; 
    if  direction_x = left  then x := x - 1; 
    if  direction_x = right then x := x + 1; 

    // проверяем, не ударилась ли иконка о край экрана
    if  x = 0 then direction_x := right; 
    if  x = (GetWidth - GetImageWidth(img)) then direction_x := left; 
    if  y = 0 then direction_y := down; 
    if  y = (GetHeight - GetImageHeight(img)) then direction_y := up; 
   
    SetColor(255, 255, 255); 
    FillRect(0, 0, GetWidth, GetHeight); 
    DrawImage(img, x, y); 
    Repaint; 
    Delay(50); 
  until GetKeyPressed <> KE_NONE; 
end.





 


К содержанию

 
Скачать новую версию данного учебника в одном архиве

Курс находится в процессе разработки, поэтому архив постоянно обновляется!




 
Hosted by uCoz