Исходные коды программ и игр

Программирование - работа и хобби

Исходный код часов со стрелками на С++

Язык программирования C++

Исходник часов со стрелками

Анимация часов со стрелками на языке С++Исходник часов со стрелками, реально отсчитывающие время, использует внутренний таймер компьютера. Исходник разработан для лабораторной работы по языку программирования С++

В зависимости от размеров окна программный код корректирует размеры "запчастей" часов: цифр, стрелок, надписей. Исходник применим для лабораторной работы в качестве примера кода вращающихся геометрических фигур. Приложение созданное посредством данного исходника отсчитывает время с достаточно точностью для применения в качестве часов.

Сравните скромные графические возможности программ на C++ MFC с графикой windows-окон нового поколения на платформе Windows Presetation Foundation: Часы со стрелками на WPF. Графика WPF, все элементы интерфейса, полностью рисуются средствами DirectX.

Классы исходника

Исходный код часов со стрелками состоит из 4-х классов. Часы "изготовлены" с помощью библиотеки MFC, которая позволяет в кратчайшие сроки создать задуманную программу. Приложение представляет собой типичную для MFC иерархическую структуру классов:

  1. CClockMFCApp - основной класс, класс приложения производный от базового класса CWinApp, на основе которого строятся все оконные MFC приложения. Основные функции этого класса - инициализация и запуск приложения, управление взаимодействием между фреймом и окном вида. В классе приложения, исходном коде предоставленного нам мастером классов, в функции инициализации делаем следующие изменения и добавления: комментируем строки загрузки фрейма приложения pFrame->LoadFrame() и, поскольку приложение не нуждается в меню, создаем окно фрейма "обычным" методом pFrame->Create() .
  2. CMainFrame - класс производный от CFrameWnd, объект этого класса представляет главное окно приложения - фрейм (рамка, каркас). Функции фрейма - размещение окна вида, обеспечение взаимодействия пользователя с рабочим окном (окном вида). Нам требуется фрейм без строки состояния и панели инструментов. Функция обработки события создания фрейма показана ниже.
  3. CChildView - рабочее окно приложения, основная работа по расчету и отображению циферблата, стрелок, надписей приходится на объект этого класса. Всего две пользовательские функции обеспечивают расчеты и визуализацию часов со стрелками. Рисование часов сначала происходит в памяти компьютера, затем законченный рисунок копируется в контекст устройства окна вида CChildView. Обеспечение периодической перерисовки окна вида берет на себя таймер, благодаря этим мерам перерисовка хода стрелок происходит без мерцания, см. прикрепленный ниже код.
  4. CAboutDlg - диалоговое окно, по запросу пользователя предоставляющее краткие данные о программе.

Прикрепленный файл исходника

Полный исходный код на С++, с подробными комментариями, с файлом .exe предлагается ниже. Среда программирования Microsoft Visual Studio .NET 2003.

Файл: clockmfc_vs8.zip
Размер: 165 Кбайт
Загрузки: 11357