мета-данные страницы
  •  
Загрузка не удалась. Возможно, проблемы с правами доступа?

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
pascal:modules [22/10/2009 15:03] dnaumovpascal:modules [24/04/2010 12:29] (текущий) dnaumov
Строка 2: Строка 2:
 FIXME FIXME
  
-<code pascal|Оформление модуля - своей библиотеки>+Модуль (Unit) - это отдельный файл. Как правило, он находится в том же каталоге, что и основная программа. Модули нужны для облегчения своего нелегкого труда программиста. Если Вы планируете использовать одну и туже процедуру в своих программах, то пора задуматься о написании модуля! 
 + 
 +Пример программы и модуля к ней. В программе графический режим включается и выключается с помощью процедур //GraphIni// и //GraphEnd// соответственно. Эти процедуры записаны в модуле //mygraph//. На экране Вы увидите окружность, которая двигается.  
 + 
 +<code pascal|Оформление программы. Содержимое файла moving.pas> 
 +program moving; 
 + 
 +uses 
 +  oglgraph, crt, mygraph; 
 + 
 +var x,y,vx,r : integer; 
 +     
 + 
 +begin 
 +  GraphIni; {открываем графическое окно - процедура из модуля mygraph} 
 +  x:=getmaxx div 2; {начальные координаты объекта - середина экрана} 
 +  y:=getmaxy div 2; 
 +  vx:=1; {скорость движения} 
 +  r:=50; {радиус окружности} 
 +  repeat  
 +        clearviewport; {очистка пассивного окна отрисовки} 
 +        SetFillStyle(4,yellow); 
 +        FillEllipse(x,y,r,r); 
 +        graphSwapBuffers; {смена окон отрисовки - мгновенное отображение на дисплее пассивного окна для отрисовки} 
 +        delay(10); 
 +        x:=x+vx; 
 +        if (x+r>=getmaxx) or (x-r<=0) then vx:=-vx; 
 +   until graphkeypressed; 
 + 
 +  GraphEnd; {закрываем графическое окно - процедура из модуля mygraph} 
 +end. 
 + 
 +</code> 
 + 
 +<code pascal|Оформление модуля. Содержимое файла mygraph.pas>>
 unit mygraph; {заголовок модуля} unit mygraph; {заголовок модуля}
 interface       interface      
Строка 12: Строка 46:
  
 {заголовки доступных из программы процедур} {заголовки доступных из программы процедур}
-Procedure Graphini+Procedure GraphIni
 Procedure GraphEnd; Procedure GraphEnd;
  
 implementation {содержимое модуля - сами процедуры и функции} implementation {содержимое модуля - сами процедуры и функции}
  
-Procedure Graphini; {процедура инициализации графического окна}+Procedure GraphIni; {процедура инициализации графического окна}
 begin begin
    gd:=detect;    gd:=detect;
Строка 40: Строка 74:
 end; end;
  
-begin {часть модуля, которая исполняется при вызове его из программы}+begin {часть модуля, которая исполняется при вызове его из программы в разделе uses}
  
 end. end.
 </code> </code>