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

Все начинается с CObject. Важнейшие классы библиотеки. Создание приложения MFC Windows. Выбор количества окон, которые будут поддерживаться приложением.

Читайте также:
  1. II. Курсы по выбору
  2. II. Создание и назидание церквей
  3. LXIV О братьях, которые путешествуют по разным провинциям.
  4. Unique способность» — умение задать точный вопрос, чтобы определиться с выбором.
  5. XVIII. Против тех, которые усиливаются посредством рассматривания звезд предсказывать будущее, и о свободной воле человека.
  6. XXVII НАЧИНАЕТСЯ ЖИЗНЕННЫЙ ОПЫТ
  7. А скрытые силы, которые нас ведут - это что такое? - спросил я.

Библиотека MFC содержит большую иерархию классов, написанных на С++.

Библиотеки классов, как правило, берут начало от одного или нескольких базовых классов, от которых порождаются все остальные. CObject — базовый класс, широко используемый при разработке приложений Windows. Массу информации о классах библиотеки можно найти в заголовочных файлах, которые находятся в каталоге MFC/INCLUDE.

Во-первых, класс CObject состоит из разделов public, protected и private. Он также обеспечивает обычный и динамический контроль типов. Вспомним, что динамический контроль типов позволяет определять тип объекта во время выполнения программы. Состояние объекта может быть сохранено на внешнем носителе (например, на диске) за счет свойства, называемого устойчивостью (persistence). Устойчивость объекта также позволяет его методам быть устойчивыми, что дает возможность восстановить данные объекта.

От базовых классов порождаются производные классы. Примером класса, порожденного от CObject, может служить CGdiObject. (CGdiObtect и его методы позволяют создавать и использовать в программе Windows средства рисования: стандартные и собственные перья, кисти и шрифты.)

Microsoft предоставляет доступ к исходным текстам библиотеки Microsoft Foundation Classes, давая максимум гибкости и адаптируемости при программировании.

Важнейшие классы библиотеки.

Некоторые классы порождаются непосредственно от CObject. Наиболее широко используемыми среди них являются CCmdTarget, CFile, CDC, CGDIObject и CMenu. Класс ССmdTarget предназначен для обработки сообщений. Класс СFile предназначен для работы с файлами. Класс CDC обеспечивает поддержку контекстов устройств. Об контекстах устройств мы будем говорить несколько позднее. В этот класс включены практически все функции графики GDI. CGDIObject является базовым классом для различных DGI-объектов, таких как перья, кисти, шрифты и другие. Класс СMenu предназначен для манипуляций с меню. От класса CCmdTarget порождается очень важный класс CWnd. Он является базовым для создания всех типов окон, включая масштабируемые ("обычные") и диалоговые, а также различные элементы управления. Наиболее широко используемым производным классом является CFrameWnd.

От класса CCmdTarget, через класс CWinThread, порождается, наверное, единственный из наиболее важных классов, обращение к которому в MFC-программах происходит напрямую: CWinApp. Это один из фундаментальных классов, поскольку предназначен для создания самого приложения. В каждой программе имеется один и только один объект этого класса. Как только он будет создан, приложение начнет выполняться.

Все MFC-программы включают заголовочный файл AFXWIN.H. В нем, а также в различных вспомогательных файлах, содержатся описания классов, структур, переменных и других объектов MFC. Он автоматически подключает большинство заголовочных файлов, относящихся к MFC, в том числе и WINDOWS.H, в котором определены все функции Windows API и другие объекты, которые используются при традиционном программировании на С и "чистом" API.

В простейшем случае программа, написанная с помощью MFC, содержит два класса, порождаемые от классов иерархии библиотеки: класс, предназначенный для создания приложения, и класс, предназначенный для создания окна. Другими словами, для создания минимальной программы необходимо породить один класс от CWinApp, а другой - от CFrameWnd. Эти два класса обязательны для любой программы.

 

Кроме создания вышеупомянутых классов, в программе также должна быть организована обработка всех сообщений, поступающих от Windows.

Приложение MFC является исполняемым приложением для Windows на основе библиотеки Microsoft Foundation Class (MFC). Наиболее простым способом создания приложения MFC является использование мастера приложений MFC.

Исполняемые приложения MFC в целом делятся на пять типов: стандартные приложения Windows, диалоговые окна, приложения на основе форм, приложения в стиле проводника и приложения в стиле браузера.

Для создания приложения на основе MFC используется тип проекта MFC AppWizard (exe) [20–21]. Это полноценное 32-разрядное приложение для ОС Windows, использующее для взаимодействия с пользователем стандартное графическое окно Windows.

Мастер приложений позволяет создавать три варианта приложений такого типа: SDI,MDI,Dialog Based. Для каждого варианта приложения создается особый каркас проекта.

SDI-приложение (Single Document Interface), или приложение с интерфейсом одного документа, позволяет программе работать только с одним документом. Примером такого приложения могут быть программы текстовый редактор Блокнот или графический редактор Paint.

MDI-приложение (Multiple Documents Interface), или приложение с интерфейсом многих документов, может одновременно работать с несколькими документами или с несколькими копиями одного и того же документа. Примером такого приложения могут быть некоторые версии текстового редактора Word, Adobe PhotoShop.

Dialog Based Application или приложение, основанное на диалоге, имеет отличительную черту – диалоговую панель, используемую для ввода данных в программу пользователем или для вывода результатов вычислений на экран.

Для создания каркаса приложения необходимы действия:

§ Вызов команды File/New…

§ Настройка параметров проекта в окне AppWizard/Projects:

o тип приложения – MFC AppWizard (exe),

o имя проекта (Name),

o размещение проекта (Location),

o флажок создания нового рабочего пространства в состоянии «установлен».

o нажать OK.

§ Выбор варианта приложения (Single document, Multiple documents или Dialog based).

 

В результате будет создан каркас MFC-приложения, в который входят модули, содержащие описания основных классов приложения, и файл ресурсов *.rc, содержащий описания диалоговых панелей, строк, акселераторов и других ресурсов. Состав классов, включенных в приложение, зависит от выбранного варианта приложения.

Первый шаг MFC AppWizard: На первом шаге вам предлагается определить, какой тип пользовательского интерфейса должно иметь приложение. Вы можете выбирать между многооконным интерфейсом (Multiple documents), однооконным интерфейсом (Single document) и интерфейсом основанном на диалоговой панели без главного окна (Dialog based).

Практически все приложения имеют пользовательский интерфейс, построенный на основе окон. Это может быть диалоговая панель, одно окно или несколько окон, связанных вместе. Основные свойства окон представлены классом CWnd, наследованным от класса CCmdTarget. CWnd. Класс CWnd сам является базовым классом для большого количества классов, представляющих разнообразные окна

 

Графические концепции и графические примитивы. Затухающий синусоидальный сигнал. Приложение DAMPWAVE.CPP. Интерфейс графических устройств (GDI). Ряд Фурье. Использование идентификатора контекста устройства (hdc).

1.Графическая концепция Одним из требований к хорошему графическому интерфейсу программной системы является концепция «делай то, что я имею в виду» или DWIM (англ. Do What I Mean). DWIM требует, чтобы система работала предсказуемо, чтобы пользователь заранее интуитивно понимал, какое действие выполнит программа после получения его команды.

Достоинства:

· Графический интерфейс является «дружелюбным» для пользователей, которые начали знакомство с компьютером с графического интерфейса.

· В программах обработки графики он, зачастую, является единственно возможным

Недостатки:

· Большее потребление памяти в сравнении с текстовым интерфейсом

· Сложнее организовать удаленную работу

· Невозможность автоматизации, если она не была заложена автором программы

· Графический интерфейс не является «дружелюбным» для пользователей, которые начали знакомство с компьютером с интерфейса командной строки.


Дата добавления: 2015-09-03; просмотров: 195 | Нарушение авторских прав


Читайте в этой же книге: Модальные диалоговые окна и класс CDialog | Как вводить данные при помощи окон диалога | ДИАЛОГОВОЕ ОКНО ШРИФТЫ (FONTS) | Средства и методы GDI. Перья. Кисти. Изменение цветов фона. Изменение цветов текста. | Работа с битовыми образами. Функции BitBlt() и PlgBlt(). Загрузка и вывод на экран битовых образов. Обработка битовых образов при помощи функции Windows NT MaskBlt(). | Вращение графического образа | Изменение цвета фона. Особенности поддержки Win32 в WIN32SWP.C. Функция WinMain(). | Изменение цвета фона. Функция окна. Обработка сообщений WM_PAINT. Обработка сообщения WM_DESTROY. Функция DefWIndowProc(). | Круговые диаграммы Windows NT. Столбиковая диаграмма. Приложение BAR.CPP. | Имена файлов и классов. Создание приложения. Создание простого диалогового приложения MFC. |
<== предыдущая страница | следующая страница ==>
Базы данных. Поддержка составных документов. Внешний вид приложения и другие опции. Другие опции.| Подготовительные работы и Допуск к работе

mybiblioteka.su - 2015-2024 год. (0.009 сек.)