Тестирование по теме "Электрическое поле" (Visual C++ с использование библиотеки MFC)

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование




функции. Хотя программы, использующие библиотеку MFC, обычно не содержат слишком специфических элементов из арсенала С++, для их написания тем не менее требуются солидные знания в данной области.

Замечание. Небольшое число классов, определенных в библиотеке, не связанно непосредственно с программированием под Windows. Это, в частности, классы, предназначенные для создания строк, управления файлами и обработки особых ситуаций. Иногда называемые классами общего назначения, они могут использоваться как Windows-, так и не - Windows-приложениями.

1.4 Каркас приложения

Наследование - одна из фундаментальных идей объектно-ориентированного программирования. Именно этот механизм наследования позволяет программисту дополнять и переопределять поведение базового класса, не вторгаясь в библиотеку MFC, которая остается неизменной. Все изменения делаются в собственном производном классе. Именно в этом и заключается работа программиста.

Объекты, их которых состоит приложение, являются объектами классов, производных от классов библиотеки MFC. Разработка приложения состоит в том, что программист берет из библиотеки MFC классы CWinApp, CFrameWnd, CDocument, CView и т.д. и строит производные классы. Приложение создается как совокупность объектов этих производных классов. Каждый объект несет в себе как наследуемые черты, определяемые базовыми классами, так и новые черты, добавленные программистом. Наследуемые черты определяют общую схему поведения, свойственную таким приложениям. Новые же черты позволяют реализовать специфические особенности поведения приложения, необходимые для решения стоящей перед ним задачи.

1.5 Проект приложения

О принципах устройства приложения рассказывалось выше. Теперь рассмотрим, как оно создается с помощью Visual C++. Сначала разберем одно важное понятие - проект. До сих пор приложение рассматривалось, как только как совокупность объектов базовых и производных классов. Но для обеспечения работы приложения требуется нечто большее - наряду с описанием классов необходимо описание ресурсов, связанных с приложением, нужна справочная система и т.п. Термин проект как раз и используется, когда имеется в виду такой более общий взгляд на приложение.

В среде Visual C++ можно строить различные типы проектов. Такие проекты после их создания можно компилировать и запускать на исполнение. Фирма Microsoft разработала специальный инструментарий, облегчающий и ускоряющий создание проектов в среде Visual C++. Например, мастер MFC AppWizard (exe) позволяет создать проект Windows-приложения которое имеет однодокументный, многодокументный или диалоговый интерфейс и использует библиотеку MFC.

Создаваемый остов приложения составлен так, что в дальнейшей работе с проектом можно использовать другое инструментальное средство - ClassWizard (мастер классов), предназначенное для создания остовов новых производных классов. Еще одно основное назначение ClassWizard в том, что он создает остовы для переопределяемых методов. Он позволяет показать все сообщения, приходящие классу, и создать остов обработчика любого из этих сообщений. Это только две основные функции ClassWizard. Он не всесилен, но его возможности довольно велики.

1.6 Классы и файлы программы

Программу Ellipse будем называть приложением с однооконным интерфейсом(SDI). Это означает, что в данный момент времени в ней может отображаться только один документ. Когда мастер создаёт приложение SDI, он порождает четыре главных класса:

  • класс документа;
  • класс представления (view);
  • класс главного окна;
  • класс приложения;

Исходные задачи программы распределяются по этим четырём главным классам, и мастер создаёт четыре отдельных исходных файла для каждого из них. По умолчанию он порождает имена классов и исходных файлов по имени проекта.

Класс документа в Ellipse называется CЕllipseDoc. Он порождается из класса CDocument библиотеки MFC. Заголовочный файл CEllipseDoc имеет имя CEllipseDoc.h, а имя файла реализации - CEllipseDoc.cpp. Класс документа отвечает за хранение данных программы и за чтение и запись данных на диск.

Класс представления в Ellipse называется CЕllipseView и порождается от MFC-класса Cview. Заголовочный файл CEllipseView называется CEllipseView.h, а имя файла реализации - CЕllipse.cpp. Класс представления отвечает за отображение данных программы (на экране, на принтере, или другом устройстве) и за обработку информации, вводимой пользователем.

Этот класс управляет окном представления (view window), которое используется для отображения данных программы на экране. Класс представления в Ellipse просто отображает строку сообщения внутри окна представления.

Класс главного окна в Ellipse называется CMainFraim и порождается от MFC-класса CFrameWnd. Заголовочный файл CMainFrame называется MainFrm.h, а имя файла реализации - MainFrm.cpp. Класс главного окна управляет главным окном программы, которое является обрамляющим окном и содержит рамку окна, строку заголовка, строку меню и системное меню. Обрамляющее окно также содержит кнопки Minimize, Maximize, Close, а иногда и другие элементы пользовательского интерфейса, например, панель инструментов, строку состояния. Окно представления, управляемое классом представления, занимает внутри обрамляющего окна пустую область, которая называется клиентской областью главного окна. Окно представления не имеет видимых элементов, кроме текста и графики, отображающейся явно. Окно представления - дочернее окно главного окна, поэтому оно всегда отображается поверх и внутри границ рабочей области главного окна.

Наконец, кл