Мои Конспекты
Главная | Обратная связь


Автомобили
Астрономия
Биология
География
Дом и сад
Другие языки
Другое
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Металлургия
Механика
Образование
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Туризм
Физика
Философия
Финансы
Химия
Черчение
Экология
Экономика
Электроника

Initgraph( тип графического драйвера, режим адаптера , путь к драйверу)



void far initgraph (int far * graphdriver, int far * graphmode, char far * pathtodriver);

Для указания типа драйвера в файле имеются константы:

DETECT = 0 (режим автоопределения типа)

CGA =1

EGA=3

VGA=9

и т. д.

Аналогично имеются константы для определения моды адаптера.

Но если программа рассчитана на работу с любым адаптером, вызов функции можно производить с требованием автоопределения типа драйвера:

int dr = DETECT , //тип драйвера и

mod ; //режим работы адаптера

// определяются автоматически

//режим при этом выбирается с максимальным разрешением

initgraph ( &dr , &mod , "D:\\Borlandc\\BGI");

// предполагается, что драйвер находится в каталоге BGI

#include <graphics.h>

#include <conio.h>//содержит прототип функции getch( )

// опишем класс

class point { //точка на экране дисплея

int x, y ;// собственные компонентные данные

public:// общедоступные компонентные функции

point (int xx=0 , int yy =0) ; // прототип конструктора

// с умалчиваемыми значениями

 

void show (void);// прототип функции изображения точки

 

void move ( int xo=0 , int yo =0) ;// прототип функции

// перемещения точки с умалчиваемыми значениями

private :// собственная функция класса

void hide ( ) ;// прототип функции, убирающей точку с экрана

} ;

//дадим внешнее определение методам класса

 

point::point( int xx=0, int yy=0 )// определение конструктора

{ x = xx ; y = yy ; }

void point :: show (void)

{ putpixel (x, y , getcolor( ) ) ;} // int getcolor(void)

//возвращает номер цвета символов

void point :: hide(void)

{ putpixel (x, y , getbkcolor( )) ; }

void point ::move ( int xn=0, int yn=0 )

{ hide ( ) ;

x =xn ; y= yn ;

show ( ) ; }

Void main ( )

{// создается три объекта , три невидимых точки

point A ( 150, 70 );

point B ; //координаты по умолчанию равныx=0иy=0

point D ( 400, 200);

 

//инициализация графики

int dr = DETECT , mod ;

initgraph ( & dr , & mod , “D :\\ borlandc\\ bgi “);

//установка цвета

setcolor(4) ;

A.show ( ) ; //показать на экране точку А

getch ( ) //подождать до нажатия клавиши

B.show ( ) ; //показать на экране точку В

getch ( ) ; //подождать до нажатия клавиши

D.show ( ) ; //показать на экране точку D

getch ( ) ; //подождать до нажатия клавиши

A.move ( ) ;// переместить точку А в начало координат

getch ( ) ; //подождать до нажатия клавиши

B.move(50, 60 ) ;// переместить точку B

getch ( ) ; //подождать до нажатия клавиши

closegraph( ) ;

}

При обращении к функции getch( )программа останавливается и ждет ввода с клавиатуры любого символа, появляется возможность отследить смену изображений.

С этой же целью используется функция int kbhit (void) (прототип в файле conio.h) .

while (! Kbhit() ); -задержка программы до нажатия клавиши.

 

Контрольные вопросы:

1) В чем суть объектно-ориентированного подхода к программированию? Дать определение класса.

Определение объекта класса по имени и с помощью указателя и динамического выделения памяти




Поиск по сайту:







©2015-2020 mykonspekts.ru Все права принадлежат авторам размещенных материалов.