Техника создания графики при помощи API функций, экспортируемых библиотекой GDI32.DLL. Разработка на языке программирования С в среде программирования Microsoft Visual C программы для отображения часов реального времени в цифровом и аналоговом виде.
Аннотация к работе
С момента появления первых образцов персональных компьютеров прошло не так уж и много времени, но сейчас без них уже немыслимо огромное количество областей человеческой деятельности - экономика, управление, наука, инженерное дело, издательское дело, образование, культура и т.д. Интерес к персональным компьютерам постоянно растет, а круг их пользователей непрерывно расширяется. С 1985 года язык С был дополнен возможностями объектно-ориентированного программирования (ООП). Использования ООП позволило не только определить типы данных пользователя, но и задать операции для этих типов. Использование этих систем позволило значительно упростить создания интерфейса, работу с базами данных и т.д.Концепция операционной системы Windows состоит в том, что программа взаимодействует с пользователем в интерактивном режиме. Но часто возникает нужда добавить необходимый несуществующий элемент управления или просто изменить внешний вид элемента. Многие программы такие как проигрователи мультимедия еще с времен Windows 95 используют свой графичский интерфейс пользователя для придания большей привлекательности со стороны пользователей. Задача курсовой работы состоит в разработке на языке программирования С в среде программирования Microsoft Visual C программы для отображения часов реального времени в цифровом и аналоговом виде.Все Windows-программы должны содержать специальную функцию, которая не используется в самой программе, но вызывается самой операционной системой. Она вызывается Windows, когда системе необходимо передать сообщение в программу. Поскольку их могут быть сотни, то большинство сообщений обычно обрабатывается самой системой, а программе достаточно поручить Windows выполнить действия, предусмотренные по умолчанию. В большинстве Windows-программ задача создания функции окна лежит на программисте. В этом цикле каждое необработанное сообщение должно быть извлечено из очереди сообщений данного приложения и передано назад в Windows, которая затем вызывает функцию окна программы с данным сообщением в качестве аргумента.Вся работа по выводу времени разбивается на две части: вывод времени в аналоговой и цифровой форме. Вывод времени в цыфровой форме сложности не представлят, тогда как вывод в аналоговой форме может быть описан довольно большим числом функций. Ниже приведена функция для вывода времени в цифровой форме. void DIGPAINT(HWND HWND, HDC hdc) {SYSTEMTIME stime; //структура для записи текущего времери GETLOCALTIME(&stime);//функция получения текущего времени char CBUFFER[100]; //переменные для хрениения строки текста char CBUFFERD[100]; HFONT fontdig1,fontdig2; //описатели для сознания нового шрифта SETBKMODE(hdc,TRANSPARENT); // изменение режима отображения фона текста wsprintf(CBUFFER,"%d%s%d%s%d",stime.WHOUR," : ", stime.WMINUTE,(PSTR)stime.WSECOND); wsprintf(CBUFFERD,"%d%s%d%s",stime.WDAY," day ", stime.WMONTH," month "); //перевод всех полученных значений в строку fontdig1= CREATEFONT(50,26,0,0, //создание нового шрифта FW_BOLD, FALSE, FALSE, FALSE, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, PROOF_QUALITY, DEFAULT_PITCH, "font1" ); SELECTOBJECT(hdc,fontdig1); // функция для выбора вышесозданного шрифта TEXTOUT(hdc,70,105, CBUFFER,strlen(CBUFFER)); // вывод текста DELETEOBJECT(fontdig1); //функция удаление шрифта fontdig2= CREATEFONT(20,15,0,0, FW_BOLD, FALSE, FALSE, FALSE, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, PROOF_QUALITY, DEFAULT_PITCH, "font2" ); SELECTOBJECT(hdc,fontdig2); TEXTOUT(hdc,115,85,CBUFFERD,strlen(CBUFFERD)); DELETEOBJECT(fontdig2); } Приведенная часть программы показывает простоту показывает простоту получения и использования времени в Windows , а также простоту вывода полученного времени на экран. После чего уже нужно готовить режимы вывода текста на экран, так как данные для вывода уже готовы, и находятся в переменных типа char CBUFFER и CBUFFERED .Для работы с программой необходимо выполнить следующие шаги: · скопировать в какой-либо каталог папку CLOCK; · Выполнение программы начинается когда пользователь нажмет на пункт меню Show, этот пункт меню содержится как в меню Digital так и в меню Analog. По нажатию этого пункта идет перерисовка окна и отображение часов в цифровом виде Далее можно изменить цвет фона текста нажатием на пункт меню Set Background Color При желании программа может быть легко доработана таким образом, чтобы выбор цвета фона и текста происходил с помощью стандартного диалога выбора цвета, где можно выбрать абсолютно любой цвет и оттенок.Для нормальной работы данной программы требуется IBM-совместимый персональный компьютер со следующими параметрами: процессор Pentium с тактовой частотой 66 MHZ и выше;В качестве интерфейса программирования был использован Windows API, который доступен для использования в этой среде с помощью заголовочного файла windows.h.
План
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
1 АНАЛИЗ, ПОСТАНОВКА ЗАДАЧИ И СФЕРА ЕЕ ПРИМЕНЕНИЯ
2 КРАТКАЯ ХАРАКТЕРИСТИКА ПРОГРАММИРОВАНИЯ ПОД WIN32
3 ОСНОВНАЯ ЧАСТЬ
4 РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ
4.3 СИСТЕМНЫЕ ТРЕБОВАНИЯ
ЗАКЛЮЧЕНИЕ
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
Вывод
В процессе курсовой работы была изучена техника программирования графики в середе Visual C . В качестве интерфейса программирования был использован Windows API, который доступен для использования в этой среде с помощью заголовочного файла windows.h. Разработана программа «часы», которая может служить наглядным примером использования функций графики интерфейса Windows API.
Несмотря на то, что MFC не был задействован в этой программах, алгоритмы и API использовавшиеся могут быть применены и в программе на базе MFC, так как из классов MFC можно всегда получить идентификаторы окон и прочие необходимые для работы с API данные. Это подтверждает эффективность и универсальность интерфейса Windows API.
Список литературы
1. Страуструп Б. Язык программирования С : В 2-х кн. -К.: Диасофт, 1993.
2. Петзольд Ч. Программирование под Windows 95. В двух книгах: BHV - Санкт - Петербург, 1997, silt.
3. «Win32 Programmer’s Reference» - электронная версия входящая в состав Borland C 5.0