Разработка текстового редактора в С++ Builder

Автор: Пользователь скрыл имя, 21 Декабря 2012 в 11:31, курсовая работа

Описание работы

В С++ некоторые объекты являются частью самого языка. Но в целом задача создания новых объектов ложится на пользователя. В C++Builder имеется множество типов объектов, но реальное использование языка требует создания новых типов. Эффективность ООП проявляется только при создании и применении групп связанных между собой объектов. Такие группы называют иерархиями классов. Развитие этих иерархий классов является основой деятельности в ООП.

Содержание

Введение……………………………………………………….............................3 1История языка C++………………………........................................................5
1.1 Стандартизация языка…………….....................................................7
1.2 История названия……………………….............................................8
1.3 Достоинства…………………………………………...........................8
2 C++ Builder…………………………………………..........................................12
2.1 Интегрированная Среда Разработки..............................................13
3 Системные диалоги......................................................................................14
3.1 Компоненты закладки Dialog..........................................................14
3.2 Диалоги открытия и сохранения файлов ……….………................16
3.3 Диалог выбора шрифта…………....................................................17
3.4 Диалоги печати и установки принтера.............................................20
4 Реализация программы в среде «С++ Builder 6»..........................................23
Заключение………………………………………..……………………………..30
Библиографический список…..............................................................................31

Работа содержит 1 файл

KURSOVIKSE.docx

— 108.66 Кб (Скачать)

Рисунок 4.1 – Диалог «Сохранить»

Теперь  настроим компонент FontDialog1. Основным свойством данного компонента является Font, с помощью которого можно выбрать тип шрифта, его цвет, размер, стиль и т. п. Эти установки будут использоваться в программе редактора по умолчанию. С помощью свойства Options можно настроить вид и поведение диалога. Например, можно добавить в него кнопку справки, установив для подсвойства fdShowHelp значение true.

На этом настройка компонентов завершена  и получена визуальная оболочка программы  редактора. Однако без программных  строк это приложение не будет  работать. При запуске приложения будут открываться пункты меню, вводиться  и редактироваться текст, но только потому, что эти функции заложены в сами компоненты. Нажатие на кнопки и вызов команд из главного меню не будут приводить к каким-либо действиям программы, поскольку  не заданы функции обработки событий. В программе редактора имеется четыре типа операций. Это открытие и сохранение файлов, настройка шрифтов и пункты «Копировать», «Вставить», «Вырезать», «Удалить». Все эти операции можно вызвать разными способами. Например, с помощью главного меню, кнопок или контекстного меню. Можно написать функции для каждого способа, но это усложнит программу и внесет трудности при ее создании и отладке. Правильнее будет создать такую функцию один раз, а затем задать ее выполнение другим компонентам с помощью инспектора объектов. Создаем функцию для команды главного меню «Открыть». Для этого открываем на главной форме пункт меню «Файл» и щелкаем левой кнопкой мыши по команде «Открыть». При этом активизируется редактор кода с заготовкой функции обработки. Вводим между фигурными скобками следующий текст программы: 

if (OpenDialog1->Execute() )

Memo1->Lines->LoadFromFile (OpenDialog1->FileName) ;

Обратите  внимание на то, что среда разработки сама предоставляет выбрать функцию  из множества разрешенных для  компонента функций после введения символа стрелки. Эти программные  строки позволят при запуске диалога  открытия файла загрузить содержимое открываемого файла в свойство Lines компонента Memo1 для отображения на экране. 
Аналогично создадим функции для оставшихся типов команд. Начнем с команды сохранения файлов «Сохранить». Открываем на главной форме пункт меню «Файл» и щелкаем левой кнопкой мыши по команде «Сохранить». При этом активизируется редактор кода с заготовкой функции обработки. Вводим между фигурными скобками следующий текст программы: 

if (SaveDialog1->Execute() )

Memo1->Lines-> SaveToFile (SaveDialog1->FileName) ;

Эти программные  строки позволят при запуске диалога  сохранения файла загрузить содержимое свойство Lines компонента Memo1 в сохраняемый файл. По аналогии для пункта «Печать» вводим следующий текст программы:

if (PrintDialog1->Execute())

 {

    Printer()->BeginDoc();

    for (int i =0; i <= Memo1->Lines->Count; i++)

    Printer()->Canvas->TextOutA(100,100+(Memo1->Font->Size+70)*i,Memo1->Lines->Strings[i]);

    Printer()->EndDoc();

   И аналогично для пункта «Установка  принтера»:

PrinterSetupDialog1->Execute();

 Для команды «Изменить Шрифт» из пункта «Шрифт» главного меню вводим с помощью инспектора кодов строки:  

 if (FontDialog1->Execute() )

Memo1-> Font=FontDialog1-> Font;

Это позволит изменять шрифт текста компонента Memo1 при открытии диалога FontDialog1. 

Открываем в меню пункт «Копировать» и вводим между фигурными скобками следующий  текст программы:

Memo1->CopyToClipboard();

 Теперь по нажатию кнопки «Копировать» выделенный текст копируется в буфер обмена.

Таким же образом добавляем код на кнопку «Вставить»:

Memo1->PasteFromClipboard(); 

«Вырезать»:

Memo1->CutToClipboard();

«Удалить»:

Memo1->SelText="";

На этом разработка текстового редактора завершена  и можно приступать к проверке работоспособности. Нажимаем кнопку «Открыть» и выбираем какой-либо файл на диске. После чего загружаем его в редактор. Изменяем с помощью клавиатуры текст файла и сохраняем его с новым именем, нажав кнопку «Сохранить». Нажимаем кнопку «Изменить шрифт» и изменяем шрифт текста редактора. Убеждаемся в том, что текст изменился в соответствии с нашими установками. Проверяем работу остальных пунктов главного меню. Далее проверяем работу контекстного меню, нажав правую кнопку мыши на поле редактора и выбрав одну из четырех команд. Редактор готов к работе.

 

 

 

 

                          

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЗАКЛЮЧЕНИЕ

 

Получившаяся  программа служит как текстовый процессор, предоставляя базовые возможности обработки текста.

Конечно, это простой текстовый редактор и у него мало функций по сравнению с MS WORD. Он похож на простой блокнот.

Единственное  его отличие в том, что он был написан на языке С++. Реализовать его я решил в среде С++ Builder 6, так как использование С++ Builder 6 имеет больше приоритетных качеств, чем другие среды программирования.

Программа имеет следующие возможности:

    • Открытие файлов;
    • Сохранение файлов;
    • Редактирование текстовых документов;
    • Изменение размера шрифта;
    • Изменение цвета шрифта;
    • Вывод текстового документа на печать;
    • Стандартные функции «Копировать», «Вставить», «Вырезать».

 

 

 

 

 

 

 

 

 

 

 

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Архангельский А.Я. Программирование в С++ Builder 6. – М.: БИНОМ, 2003.

2. Пахомов Б. Самоучитель C/C++ и C++ Builder 2007. – СПБ: БХВ-Петербург, 2008.

3. Шилдт Г. Программирование на Borland C++ для профессионалов. – М.: Попурри, 1998.

 

 

 

 

 


Информация о работе Разработка текстового редактора в С++ Builder