Курсовая работа: Текстовый редактор

ПЛАН

1.Введение

2.Работа с текстовыми документами

3.Класс CEdit

4.Описание работы программы

5.Заключение

6.Список использованных источников

7.Приложение «Текстовый редактор»


1.ВВЕДЕНИЕ

В начале семидесятых консорциум очень умных людей разрабатывал компьютерную систему Muitix. Ее предназначением было обеспечение недорогого всеобщего доступа к графическим, текстовым и другим файлам. Конечно, это была совершенно глупая идея, и в целом проект провалился. Небольшая группа инженеров, работающих в лабораториях Белла, решила использовать фрагменты Muitix в небольшой операционной системе, которую окрестили Unix.

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

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

· словарь понятных для людей команд, которые конвертируются в машинный язык;

· структуру языка (или грамматику), которая позволяет пользователям составлять из команд работающие программы.

В курсовой работе по предмету ВУМИП мне было необходимо сделать текстовый редактор на языке VisualC++.

Разрабатываемый мною текстовый редактор является созданным мастером MFC Application Wizard приложением, которое поддерживает архитектуру документ-представление. Программа должна обеспечивать ввод и редактирование текста в окне представления и отображать полосы прокрутки. Меню программы должно содержать команды печати, отмены последних действий, относящихся к редактированию, команды вырезания, копирования и вставки текста, а также поиска. Для реализации операций ввода и редактирования текста внутри окна представления необходимо класс представления сделать производным от MFC-класса CEditView. При этом меню приложения будет содержать набор команд редактирования, и программисту не потребуется писать код для данных функций.


2. РАБОТА С ТЕКСТОВЫМИ ДОКУМЕНТАМИ

Специалисты Microsoft считают текстовые документы единственным достойным объектом своей работы. Вся операционная система разрабатывалась именно для работы с данным типом документов. Поэтому, рассматривая Visual C++, нельзя обойти молчанием эту область его применения.

Однако вследствие своей любви к написанию редакторов создатели Visual C++ самостоятельно разработали два типа редакторов, обеспечив их всеми необходимыми с их точки зрения функциями и, посчитав свои творения совершенством, практически исключили всякое вмешательство в их работу со стороны пользователя. Эти редакторы реализованы в объектах классов CEdit и CRichEditview. Первый из них представляет собой простейший редактор, используемый в текстовых полях диалоговых окон, и не предусматривает форматирования текста и использование различных шрифтов. Все эти возможности имеются в текстовом редакторе, реализованном в классе CRichEditview. Возможности, предоставляемые этим редактором, наглядно продемонстрированы в текстовом редакторе WordPad, являющемся примером использования данного класса, текст которого можно найти в библиотеке MSDN.

3. КЛАСС CEDIT

Объект класса CEdit обеспечивает функционирование элемента управления текстового поля Windows. Текстовое поле Windows представляет собой прямоугольное дочернее окно, в которое пользователь может вводить текст. Данный элемент управления может создаваться в шаблоне диалога или непосредственно в программе пользователя. В обоих случаях сначала вызывается конструктор класса CEdit, создающий объект данного класса, а затем вызывается функция Create, создающая текстовое поле Windows и связывающая его с объектом класса CEdit. Объект класса, производного от класса CEdit может быть создан за один шаг, если в его конструкторе будет вызвана функция Create. Объект класса CEdit наследует многие возможности объекта класса CWnd. Чтобы записать текст в объект класса CEdit, используется функция CWnd::SetWindowText, а чтобы считать его оттуда используется функция CWnd::GetWindowText. Эти функции позволяют записать или считать весь текст, содержащийся в данном элементе управления даже в том случае, когда он является многострочным. В том случае, если данный элемент управления является многострочным, в нем могут использоваться следующие функции для работы с частью содержащегося в нем текста: CEdit::GetLine, CEdit::SetSel,

CEdit::GetSel и CEdit::ReplaceSel. Чтобы обработать сообщение, посылаемое текстовым полем своему родительскому окну (обычно это объект класса, производного от CDialog), добавьте соответствующий макрос в карту сообщений и создайте функцию для обработки данного сообщения. Макрос карты сообщений для данного типа сообщений имеет следующий формат:

ON_Notification(id, memberFxn)

где id - идентификатор дочернего окна элемента управления, посылающего сообщение, а memberFxn - имя функции обработки данного сообщения в классе родительского окна. Прототип функции обработки сообщения имеет следующий формат:

afx_msg void memberFxn();

Ниже приведен список макросов карты сообщений, которые могут использоваться для обработки сообщений, посылаемых данным элементом управления:

ON_EN_CHANGE - пользователь произвел действие, которое может привести к изменению текста, содержащегося в текстовом поле. В отличие от сообщения EN_UPDATE данное сообщение посылается после того, как Windows произведет обновление экрана;

ON_EN_ERRSPACE - для данного текстового поля не может быть выделен необходимый для него объем памяти;

ON_EN_HSCROLL - пользователь воспользовался горизонтальной полосой прокрутки данного элемента управления. Сообщение посылается родительскому окну до обновления экрана;

--> ЧИТАТЬ ПОЛНОСТЬЮ <--

К-во Просмотров: 554
Бесплатно скачать Курсовая работа: Текстовый редактор