Автор: Пользователь скрыл имя, 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 - Компоненты Dialog
3.1 Компоненты закладки Dialog
Компоненты закладки Dialog (Рис. 1) позволяют создавать диалоги с пользователем программы.
Диалоги придают программе гибкость
и позволяют пользователю манипулировать
объектами программы во время
ее работы. Закладка содержит десять компонентов
стандартных диалогов:
• OpenDialog (диалог открытия) позволяет создать
в программе диалог открывания файлов.
Данный диалог имеет возможность установки
фильтров на имя и расширение открываемых
файлов.
• SaveDialog (диалог сохранения) создает в программе
диалог с возможностью выбора в программе
имени файла для сохранения. Данный диалог
обычно используется в связке с компонентом
OpenDialog.
• OpenPictureDialog (диалог открытия рисунка) предназначен
для создания диалогов открытия файлов
с графическим изображением. Он отличается
от компонента OpenDialog возможностью предварительного
просмотра файла изображения непосредственно
в окне диалога.
• SavePictureDialog (диалог сохранения рисунка) создает
диалог сохранения файла с изображением.
Так же, как и OpenPictureDialog, имеет возможностью
предварительною просмотра файла изображения
непосредственно в окне диалога.
• FontDialog (диалог выбора шрифта) предоставляет
возможность создания диалога для выбора
шрифта текста в программе.
• ColorDialog (диалог выбора цвета) предназначен для
создания диалога для выбора цвета из
палитры цветов Windows. Полученный числовой
параметр цвета после этого можно передать
любому компоненту, имеющему свойство
Color.
• PrintDialog (диалог выбора принтера) позволяет организовать
в программе диалог выбора печатающего
устройства из числа установленных на
компьютере. Кроме того, данный диалог
позволит задать число копий, выбрать
или задать диапазон печатаемых страниц
и т. п.
• PrinterSetupDialog (диалог установки принтера) создает
в программе диалог настройки параметров
печатающего устройства, к числу которых
относятся выбор типа бумаги и ее ориентация,
параметры отображения графики.
• FindDialog (диалог поиска) открывает в программе
диалог поиска текста с возможностью настройки
параметров поиска.
• Replace Dialog (диалог замены) открывает в программе
диалог поиска текста с возможностью замены
найденного фрагмента на заданный пользователем.
Обладает всеми возможностями компонента
FindDialog.
Кроме рассмотренных выше закладок с компонентами на палитре присутствует множество других закладок (Samples, Office2k, Internet Express, BDE, ADO и т. п.) для более сложных компонентов, используемых профессиональными программистами.
3.2 Диалоги открытия и сохранения файлов
Компоненты OpenDialog — диалог «Открыть файл» и SaveDialog — диалог «Сохранить файл как...», пожалуй, используются чаще всего, в большинстве приложений. Примеры открываемых ими аналоговых окон приведены на рис. 3.1 и 3.2.
Рисунок 2.1 - Диалог "Открыть файл"
Рисунок 3.2 – Диалог «Сохранить»
Все свойства этих компонентов одинаковы, только их смысл несколько различен для открытия и закрытия файлов. Основное свойство, в котором возвращается в виде строки выбранный пользователем файл, — FileName. Значение этого свойства можно задать и перед обращением к диалогу. Тогда оно появится в диалоге как значение по умолчанию в окне Имя файла (см. рис. 3.1 и 3.2).
Типы искомых файлов, появляющиеся в диалоге в выпадающем списке Тип файла (рис. 3.1 и 3.2), задаются свойством Filter. В процессе проектирования это свойство проще всего задать с помощью редактора фильтров, который вызывается нажатием кнопки с многоточием около имени этого свойства в Инспекторе Объектов. При этом открывается окно редактора, вид которого представлен на рис. 3.3. В его левой панели Filter Name вы записываете тот текст, который увидит пользователь в выпадающем списке Тип файла диалога. А в правой панели Filter записываются разделенные точками с запятой шаблоны фильтра. В примере рис. 3.3 задано два фильтра: текстовых файлов с расширениями .txt и .doc и любых файлов с шаблоном *.*.
Рисунок 3.3 - Окно редактора фильтров
3.3
Диалог выбора шрифта —
Компонент FontDialog вызывает диалоговое окно выбора атрибутов шрифта, представленное на рис. 3.4. В нем пользователь может выбрать имя шрифта, его стиль (начертание), размер и другие атрибуты.
Рисунок 3.4 - Диалоговое окно выбора атрибутов шрифта
Основное свойство компонента — Font типа TFont, в котором вы можете задать при желании начальные установки атрибутов шрифта и в котором вы можете прочесть значения атрибутов, выбранные пользователем в процессе диалога.
Свойства MaxFontSize и MinFont
Свойство Device определяет, из какого списка возможных шрифтов будет предложен выбор в диалоговом окне: fdScreen — из списка экрана (по умолчанию), fdPrinter — из списка принтера, fdBoth — из обоих.
Свойство Options содержит множество опций:
По умолчанию все эти опции, кроме fdEffects, отключены. Если установить опцию fdApplyButton, то при нажатии пользователем кнопки «Применить» возникает событие OnApply, в обработчике которого вы можете написать код, который применит выбранные пользователем атрибуты, не закрывая диалогового окна.
Приведем примеры применения компонента FontDialog. Пусть ваше приложение включает окно редактирования Memo1, шрифт в котором пользователь может выбирать командой меню Шрифт. Вы ввели в приложение компонент FontDialog, имя которого по умолчаниюFontDialog1. Тогда обработчик команды Шрифт может иметь вид:
if (FontDialog1->Execute()) Memo1->Font=FontDialog1->Font;
3.4 Диалоги печати и установки принтера
Компонент PrintDialog вызывает диалоговое окно печати, представленное на рис. 3.5. В нем пользователь может выбрать принтер и установить его свойства, указать число копий и последовательность их печати, печатать в файл или непосредственно на принтер, выбрать печатаемые страницы или печатать только выделенный фрагмент.
Рисунок 3.5 - Диалоговое окно настройки печати
Компонент PrintDialog не
осуществляет печать. Он только позволяет
пользователю задать атрибуты печати.
А сама печать должна осуществляться программно
с помощью объекта Printer или иным путем. Рассмотренные
ранее диалоговые компоненты возвращали
одно свойство — имя файла, цвет, или один
объект — Font, содержащий множество свойств.
В отличие от них компонент PrintDialog
Теперь остановимся на компоненте PrinterSetupDialog, вызывающем диалоговое окно установки принтера, представленное на рис. 3.6. Это единственный диалоговый компонент, не имеющий никаких специфических свойств, которые надо было бы устанавливать или читать. Диалог выполняет операции по установке принтера, на котором будет производиться печать, и задании его свойств. Этот диалог не возвращает никаких параметров.
Рисунок 3.6 - Диалоговое окно установки принтера
4 Реализация программы в среде «С++ Builder 6»
Запускаем Borland C++ Builder 6 и создаем новый проект. Поскольку текстовый редактор предназначен для работы с текстовыми строками, нам понадобится компонент Memo из вкладки Standard. Помещаем его в центре формы проекта. Теперь помещаем на форму компонент MainMenu из той же вкладки и добавляем кнопки «Сохранить», «вставить» и так далее. Они понадобятся для формирования в программе органов управления для открытия и сохранения файлов и для других функций. Поскольку редактор должен при открытии и сохранении файлов обращаться к дисковым накопителям, необходимо добавить на форму диалоги Open Dialog и Save Dialog из вкладки Dialogs. Кроме того, добавляем на форму диалог Font Dialog из этой же вкладки. Он облегчит нам задачу настройки шрифтов из программы. Эти компоненты являются невидимыми при работе программы, поэтому место их размещения на форме не имеет значения. Но все же лучше располагать такие компоненты без наложения, для того чтобы они не скрывали друг друга.
Теперь приступим к изменению свойств компонентов. Начнем с компонента Memo, выбрав его в инспекторе объектов. Вначале удалим надпись Memo1 с компонента, для того чтобы она не появлялась при запуске приложения. Для этого изменим свойство Lines, щелкнув по кнопке с тремя точками правее надписи Tstrings этого свойства. При этом откроется окно редактора строки String List Editor, в котором необходимо удалить строку Memo1 и нажать кнопку ОК. Далее растягиваем Memo1 на всю клиентскую область, для этого в свойстве Align выбираем AlClient.
Настройку
главного меню произведем с помощью
дизайнера меню, вызываемого двойным
щелчком левой кнопки мыши по компоненту MainMenu.
Ранее мы уже ввели один пункт меню под
названием «Файл». Следующий по горизонтали
пункт меню назовем «Правка». Теперь заполним пункты
меню по вертикали. Щелкаем левой кнопкой
мыши по пункту меню «Файл», а затем ниже него
по пустому полю. Свойство Caption этого пункта меню
изменяем на «Открыть» и нажимаем клавишу <Enter>.
Следующий пункт называем «Сохранить».
Аналогично расширяем по вертикали пункты
меню «Правка», добавив пункты: «Копировать»,
«Вставить», «Вырезать», «Удалить».
На этом этап создания главного меню программы
редактора завершен. Все введенные пункты
меню теперь будут присутствовать в приложении,
но пока не будут выполняться, поскольку
не созданы функции для выполнения соответствующих
команд. Создаем их. Для этого воспользуемся
компонентами диалогов, помещенных ранее
на форму приложения. С помощью диалогов
работы с файлами можно задать направленность
приложения путем определения типов открываемых
файлов. Это делается с помощью свойства Filter.
Выбираем в инспекторе объектов компонент OpenDialog1 и нажимаем кнопку с тремя точками правее свойства Filter. При этом появится диалоговое окно Filter Editor, в котором производится настройка типов файлов. Окно разбито на два поля. В левом поле Filter Name вводятся строки пояснения. В правом поле Filter — расширения файлов. Для указания нескольких типов файлов необходимо записать их через точку с запятой. Если задать несколько строк с пояснениями и типами файлов, то при работе приложения их можно будет выбирать с помощью выпадающего списка. Заполняем оба поля диалогового окна Filter Editor в соответсвии с рисунком 4 и нажимаем ОК.
Рисунок 4 - Окно редактора фильтров
Аналогично
выполняем настройку компонента SaveDialog1. Для корректности
работы приложения оба эти диалога должны
иметь одинаковую настройку свойства Filter.
Чтобы облегчить эту работу и избежать
ошибок, можно использовать два способа.
Первый способ уже был показан ранее, когда
несколько компонентов кнопок выделялось
в группу и задавалось свойство одновременно
для всех выделенных компонентов. Второй
способ заключается в том, что, задав свойство
для одного из компонентов, можно скопировать
и вставить его для других компонентов
с помощью комбинации клавиш <Ctrl>+<C>
и <Ctrl>+<V> соответственно. Так, после
задания свойства Filter компонента Ope
Информация о работе Разработка текстового редактора в С++ Builder