- •Фгбоу впо «Воронежский государственный технический университет»
- •Программная реализация функций управления видеосистемой эвм
- •Программная реализация функций управления видеосистемой эвм
- •1.2. Содержание работы
- •1.3. Используемое оборудование и программные средства
- •2.1. Краткие теоретические сведения
- •Функции Win32 api для видеосистемы
- •Получение цвета точки с заданными координатами
- •Управляющие функции видеосистемы
- •Установка режимов копирования изображения
- •3.1. Порядок выполнения лабораторной работы
- •3.2. Указания по оформлению отчета
- •Программная реализация функций управления видеосистемой эвм
Установка режимов копирования изображения
void main()
{ hDeskTop=GetDesktopWindow(); hCurWin=GetActiveWindow(); dcDeskTop=GetWindowDC(hDeskTop); dcCurWin=GetWindowDC(hCurWin); BitBlt(dcCurWin,0,0,100,100,dcDeskTop,0,0,SRCCOPY); ReleaseDC(hDeskTop,dcDeskTop); ReleaseDC(hCurWin,dcCurWin); }
Вспомогательные или обслуживающие функции, такие как GetActiveWindow, GetDesktopWindow, GetDC, GetWindowDC и ReleaseDC имеют место так же, как и в файловой системе. В данном случае приведенные функции обслуживают процессы рисования, и процессы получения информации об области вывода графических данных (дисплей, принтер).
Например, перед выполнением функций рисования требуется получить идентификатор контекста устройства (GetActiveWindow, GetDC). Получение этого идентификатора связано с выделением памяти для его хранения, поэтому после завершения процесса рисования следует освободить память (ReleaseDC). Естественно, что включение вспомогательных функций в управляющие значительно упростило бы их использование. Однако при необходимости многократного использования контекста устройства подобное включение, а значит постоянное выделение и освобождение памяти для каждой функции было бы не рационально и внесло бы значительную задержку пропорциональную количеству функций рисования.
3. ЛАБОРАТОРНОЕ ЗАДАНИЕ
3.1. Порядок выполнения лабораторной работы
В лабораторной работе требуется разработать программное приложение, реализующее функции управления видеосистемой с помощью функций WIN32API, согласно варианту задания. Варианты задания приведены в таблице.
3.2. Указания по оформлению отчета
Отчет должен содержать:
наименование и цель работы;
краткие теоретические положения по организации и особенностям функционирования видеосистемы ЭВМ;
структуру программного проекта, соответствующего заданию (набор взаимосвязанных программных модулей);
результаты работы, содержащие листинги программных средств с комментариями.
Таблица. Варианты заданий
Номер варианта |
Информационные функции |
Управляющие функции |
||||||||
GetSysColor |
SystemParametersInfo |
GetSystemMetrics |
GetDeviceCaps |
EnumDisplaySetting |
GetPixel |
SetSysColors |
SystemParametersInfo |
ChangeDisplaySetting |
BitBlt |
|
1 |
+ |
+ |
+ |
|
|
|
+ |
+ |
|
|
2 |
|
|
|
+ |
+ |
+ |
|
+ |
+ |
|
3 |
|
+ |
+ |
+ |
|
|
|
|
+ |
+ |
4 |
|
|
+ |
+ |
+ |
|
+ |
|
+ |
|
5 |
+ |
|
+ |
|
+ |
|
|
+ |
|
+ |
6 |
|
+ |
|
+ |
|
+ |
+ |
|
|
+ |
7 |
+ |
+ |
|
|
|
+ |
|
|
+ |
+ |
8 |
|
+ |
|
|
+ |
+ |
+ |
+ |
|
|
9 |
+ |
|
+ |
+ |
|
|
|
+ |
|
+ |
10 |
+ |
|
|
|
+ |
+ |
+ |
|
+ |
|
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
Елманова Н. З., Кошель С.П. Введение в Borland C++ Builder 4. М.: Диалог МИФИ, 1999. 352 с.
Рихтер Дж. Windows для профессионалов: Программирование для Windows 95 и Windows NT 4 на базе Win32 API. М.: Издательский отдел “Русская редакция” ТОО “Сhannel Trading Ltd.”, 1997. 712 c.
Румянцев П. В. Азбука программирования в Win32 API. М.: Радио и связь, 1998. 272 с.
Фролов Л. В., Фролов Г. В. Аппаратное обеспечение персональных компьютеров. М.: ДИАЛОГ МИФИ, 1997. 304 с.
Холден Г. Реестр Windows'98: Справочник СПб.: Изд-во "Питер", 1999. 480 с.
Шамис В. А. Borland C++ Builder. Программирование на C++ без проблем. М.: Изд-во "Нолидж", 1997. 266 с., ил.