Студопедия

Главная страница Случайная страница

Разделы сайта

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






Приложение MDI






Приложение с однооконным интерфейсом (SDI) не всегда соответствует потребностям пользователя. Например, часто требуется просматривать на экране одновременно несколько документов. Можно для этого использовать SDI-приложение, если одновременно держать открытыми несколько копий приложения. Другой путь – использование приложения с многооконным интерфейсом или MDI-приложение (Multipe Documents Interface) [22]. Такое приложение имеет много общего с SDI-приложением, также поддерживает архитектуру «документ/представление», но оно более сложное. Главное окно приложения может открывать несколько дочерних окон, в каждом из которых отображается документ. Документ имеет свое представление, а возможно и не одно. Тип документа, с которым работает приложение, определяется включенным в приложение шаблоном документа. В приложение может быть включено несколько шаблонов, причем каждому шаблону будет соответствовать свой тип документа. Такое приложение может работать с документами различных типов.

Создадим MDI-приложение – текстовый редактор для файлов типа txt. Назовем проект аналогично предыдущему – Lab3. Для начала также воспользуемся мастером MFC AppWizard.

Рассмотрим работу мастера MFC AppWizard по шагам.

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

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

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

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

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

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

· нажать OK.

3. Первый шаг мастера: выбор варианта приложения – Muliple document, использовать для ресурсов по умолчанию английский язык, поддержка архитектуры «документ/представление» (Document/View architecture support).

4. Второй шаг: выбор поддержки баз данных; оставим настройку по умолчанию - поддержка баз данных отсутствует (None).

5. Третий шаг: поддержка составного документа – также оставим настройки по умолчанию.

6. Четвертый шаг предлагает включить в документ различные элементы интерфейса пользователя:

Docking toolbar – плавающая панель инструментов,

Initial status bar – строка состояния,

Printing and print preview – печать и предварительный просмотр,

Context-sensitive help – контекстная подсказка,

3D controls – объемные элементы управления,

а также указать количество документов, хранимых в буфере недавно использованных файлов. Кнопка Advanced позволит задать расширение, которое будет присваиваться файлам, созданным этим приложением (File
extention – txt, например), заголовок окна приложения (Main frame caption), фильтр для файлов (Filter name). На вкладке Windows Styles выбираются параметры главного окна приложения: рамка (Thick frame), кнопки максимизации (Maximize box) и минимизации окна (Minimize box), системное меню (System menu).

7. Пятый шаг позволяет выбрать стиль проекта – оставим по умолчанию MFC Standard, а также включить комментарии (file comments) в исходный текст программы.

8. Шестой шаг информирует о включении в проект классов MFC:

CLab3View – пользовательский класс представления документа, созданный на базе стандартного класса MFC CView;

CLab3App – пользовательский класс приложения, созданный на базе стандартного класса MFC CWinApp, используется для создания объекта приложения;

CMainFrame – класс для создания главного окна приложения, производный от стандартного класса MFC CMDIFrameWnd;

CChildFrame – класс для создания дочерних окон, производный от стандартного класса MFC CMDIChildWnd;

CLab3Doc – пользовательский класс документа, созданный на базе стандартного класса MFC CDocument.

На этом шаге изменим класс представления CView на класс CEditView, который позволит вам автоматически получить простейший текстовый редактор.

Кроме набора классов в каркас приложения включаются ресурсы: иконки, меню, строки. По умолчанию язык ресурсов – английский. Чтобы работать над приложением дальше, следует изменить язык ресурсов на русский.

Следующий этап создания приложения – редактирование ресурсов. Рассмотрим редактирование таблицы строк String Table.

Отредактируем строку IDR_MAINFRAME, которая определяет содержание строки заголовка окна редактора – введем название редактора.

Отредактируем строку IDR_LAB3TYPE. По умолчанию для проекта, имеющего имя Lab3, эта строка выглядит так:

\nLab3\nLab3\n\n\nLab3.Document\nLab3 Document

Строка состоит из семи строк, разделенных символом перевода строки \n. Они могут быть пустыми, иметь значения по умолчанию или их можно отредактировать. Вариант редактирования строки IDR_ LAB3TYPE приведен в табл. 21.5.

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

Таблица 21.5

№ строки Текст по умолчанию Назначение Текст после редактирования
 
  Lab3 Имя файла, которое присваивается новому документу по умолчанию Текст
  Lab3 Имя типа документа txt
    Описание типа документа и его фильтра. Эта строка используется в стандартных диалогах Open и Save as txt Files (*.txt)
    Расширение типа документа txt
  Lab3.Document Идентификатор типа документа, хранящийся в реестре Windows Txt.Document
  Lab3.Document Имя типа документа, хранящееся в реестре Windows Txt Document





© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.