Эмуляция пункта меню MS Word: сервис-автозамена

Автоформат при вводе. Работа со смарт-тегами. Работа с компонентами среды разработки Borland C++, их свойства, методы и правила их использования. Страница событий инспектора объектов. Создание интерфейса, эмулирующего пункт меню Microsoft Office Word.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 09.06.2015
Размер файла 524,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ

(НИУ «БелГУ»)

Факультет Компьютерных наук и телекоммуникаций

Кафедра Математического и программного обеспечения информационных систем

Курсовая работа

Эмуляция пункта меню MS Word: сервис - автозамена

Студента дневного отделения 1 курса группы 141001

Разночинцева Александра Викторовича

Научный руководитель

доцент Чашин Юрий Геннадьевич

БЕЛГОРОД 2011 г.

Введение

Некоторые ошибки ввода можно исправлять автоматически, если использовать автозамену (Сервис - Автозамена) установкой соответствующих флажков. Например: заменять в начале предложения строчную букву на прописную, отменить действие случайного нажатия Caps Lock, по ходу ввода задать для фрагмента полужирный шрифт, если обрамить символами "*" - звездочками (или курсив, обрамив фрагмент символами подчеркивания). При автозамене для исправлений используется основной словарь для проверки орфографии и встроенной список элементов автозамены. В список автозамены можно добавить новые элементы или удалить из него ненужные.

В окне автозамены содержится несколько вкладок:

Автозамена

Автоформат при вводе

Автотекст

Автоформат

Смарт-теги

Автозамена - в данной вкладке пользователь может добавлять и удалять элементы автозамены. Также при помощи флажков пользователь может настроить дополнительные опции (исправление двух прописных букв в начале слова, устранение последствий случайного нажатия Caps Lock и т.д.). Так же на этой вкладке имеется кнопка, при нажатии на которую открывается панель исключений, которую мы так же можем редактировать.

Автоформат при вводе - в данной вкладке пользователь может устанавливать, что заменять при вводе (дефисы на тире, адреса Интернета и сетевые пути на гиперссылки) и что применять (линии границ, таблицы).

Автотекст - на данной вкладке находятся опции для работы с автотекстом. Здесь пользователь может добавлять и удалять элементы автотекста. В отличии от автозамены автотекст, не начинает работу, пока вы специально не обратитесь к нему посредством нажатия клавиши F3.

Автоформат - данная вкладка так же как и вкладка «Автоформат при вводе» содержит набор переключателей для настройки параметров форматирования: применения и замены.

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

Цели и задачи курсовой работы:

1. Закрепить практические навыки программирования, полученные при изучении языка С++;

2. Разработать программу согласно заданию курсовой работы;

3. Получение опыта работы с компонентами среды разработки Borland C++ Builder 6.0, анализ научно-технической литературы, справочников, стандартов и технической документации;

1. Теоретическая часть

Borland C++ Builder - средство быстрой разработки приложений, позволяющее создавать приложения на языке C++.

C++ Builder представляет собой SDI-приложение, главное окно которого содержит настраиваемую инструментальную панель и палитру компонентов. Помимо этого, по умолчанию при запуске C++ Builder появляются окно инспектора объектов и форма нового приложения. Под окном формы приложения находится окно редактора кода. Формы являются основой приложений C++ Builder. Создание пользовательского интерфейса приложения заключается в добавлении в окно формы элементов объектов C++ Builder, называемых компонентами.

1.1 Компоненты C++ Builder

Компоненты C++ Builder располагаются на панели компонентов, выполненной в виде многостраничного блокнота. Важная особенность C++ Builder состоит в том, что он позволяет создавать собственные компоненты и настраивать панель компонентов, а также создавать различные версии палитры компонентов для разных проектов.

Компоненты разделяются на видимые (визуальные) и невидимые (невизуальные). Визуальные компоненты появляются во время выполнения точно так же, как и во время проектирования. Примерами являются кнопки и редактируемые поля. Невизуальные компоненты появляются во время проектирования как пиктограммы на форме.

Они никогда не видны во время выполнения, но обладают определенной функциональностью (например, обеспечивают доступ к данным, вызывают стандартные диалоги Windows и др.)

Каждый компонент C++ Builder имеет три разновидности характеристик: свойства, события и методы.

1.2 Свойства

Свойства являются атрибутами компонента, определяющими его внешний вид и поведение. Многие свойства компонента в колонке свойств имеют значение, устанавливаемое по умолчанию (например, высота кнопок). Свойства компонента отображаются на странице свойств (Properties). Инспектор объектов отображает опубликованные (published) свойства компонентов. Помимо published-свойств, компоненты могут и чаще всего имеют общие (public), опубликованные свойства, которые доступны только во время выполнения приложения. Инспектор объектов используется для установки свойств во время проектирования. Список свойств располагается на странице свойств инспектора объектов. Можно определить свойства во время проектирования или написать код для видоизменения свойств компонента во время выполнения приложения.

При определении свойств компонента во время проектирования нужно выбрать компонент на форме, открыть страницу свойств в инспекторе объектов, выбрать определяемое свойство и изменить его с помощью редактора свойств (это может быть простое поле для ввода текста или числа, выпадающий список, раскрывающийся список, диалоговая панель и т.д.).

1.3 События

Страница событий (Events) инспектора объектов показывает список событий, распознаваемых компонентом (программирование для операционных систем с графическим пользовательским интерфейсом, в частности, для Windows 95 или Windows NT предполагает описание реакции приложения на те или иные события, а сама операционная система занимается постоянным опросом компьютера с целью выявления наступления какого-либо события). Каждый компонент имеет свой собственный набор обработчиков событий. В C++ Builder следует писать функции, называемые обработчиками событий, и связывать события с этими функциями. Создавая обработчик того или иного события, вы поручаете программе выполнить написанную функцию, если это событие произойдет.

Для того чтобы добавить обработчик событий, нужно выбрать на форме с помощью мыши компонент, которому необходим обработчик событий. Затем открыть страницу событий инспектора объектов и дважды щелкнуть левой клавишей мыши на колонке значений рядом с событием, чтобы заставить C++ Builder сгенерировать прототип обработчика событий и показать его в редакторе кода. При этом автоматически генерируется текст пустой функции, и редактор открывается в том месте, где следует вводить код. Курсор позиционируется внутри операторных скобок { ... }. Далее нужно ввести код, который должен выполняться при наступлении события. Обработчик событий может иметь параметры, которые указываются после имени функции в круглых скобках.

1.4 Методы

Метод является функцией, которая связана с компонентом, и которая объявляется как часть объекта. Создавая обработчики событий, можно вызывать методы, используя следующую нотацию: ->, например:

Edit1->Show();

Отметим, что при создании формы связанные с ней модуль и заголовочный файл с расширением *.h генерируются обязательно, тогда как при создании нового модуля он не обязан быть связан с формой (например, если в нем содержатся процедуры расчетов). Имена формы и модуля можно изменить, причем желательно сделать это сразу после создания, пока на них не появилось много ссылок в других формах и модулях.

1.5 Используемые компоненты и их основные свойства

Большинство компонентов среды разработки Borland C++ builder имеют одинаковые свойства, определяющие их имя, заголовок, размеры, скрытность и т.д. Свойства любого компонента можно изменить во время создания программы с помощью инспектора объектов, при этом для большинства компонентов эти изменения можно зрительно увидеть по тому, как измениться при этом сам компонент.

1.5.1 CheckBox

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

Основное свойство для этого компонента - это свойство State. Оно может принимать три значения (именно три, а не два) - cbUnchecked (неотмеченное состояние), cbChecked (отмеченное состояние) и cbGrayed (серое состояние). Компонент может иметь такое состояние тогда, когда про соответствующий ему параметр нельзя сказать, включен он или нет. Еще одно свойство, показывающее состояние компонента - это свойство Checked. Оно равно true, если компонент отмечен, и false, если не отмечен (т. е. при этом его свойство State может принимать два значения - cbChecked и cbUnchecked).

1.5.2 Label

При помощи поля Label можно добавлять в форму обычные надписи, выполненные заданным шрифтом. Текст надписи задается свойством Text. Чтобы задать шрифт, которым отображается текстовая строка, отредактируйте свойство Font. Для того чтобы указать цвет символов добавляемого текстового поля, отредактируйте свойство ForeColor.

Свойство BorderStyle указывает, надо ли заключать текстовое поле в рамку, и если надо, то в какую. По умолчанию это свойство имеет значение None, в результате чего рамка не используется. Если нужно заключить поле в тонкую рамку, задайте для этого свойства значение FixedSingle, а если в трехмерную -- значение Fixed3D. Если отредактировать значение свойства Cursor, то можно изменить внешний вид курсора, когда он оказывается над текстовым полем. Еще одно важное свойство TextAlign текстовых полей задает способ выравнивания текста в прямоугольной области, отведенной для поля.

1.5.3 Edit

Компонент Edit представляет собой окно редактирования, в котором пользователь может ввести какие-нибудь необходимые данные как текстовые, так и числовые. Основное свойство компонента Edit - Text, которое и позволяет считать введённые данные из компонента или, наоборот, задать требуемое значение. Свойство Text доступно в процессе проектирования и во время выполнения приложения и принадлежит типу AnsiString. В компоненте Edit предусмотрены также такие "горячие" клавиши как: Ctrl+C (копирование в буфер обмена), Ctrl+X (вырезание выделенного текста в буфер), Ctrl+V (вставка текста из буфера обмена) и Ctrl+Z (отмена последней команды редактирования). Свойство AutoSelect определяет будет ли выполняться автоматическое выделение всего текста при получении компонентом фокуса. Если это свойство установить в true, то выделение всего текста будет выполняться. Компонент Edit можно использовать и как средство отображения какого-либо текста, для этого нужно установить свойство ReadOnly = true. Внешний вид компонента определяет свойство BorderStyle, возможные значения которого - bsSingle и bsNone. Расположение и размеры компонента на форме определяют свойства Top, Left, Height и Width. За оформление текста отвечает свойство Font.

1.5.4 ValueListEditor

Этот компонент представляет собой окно редактирования списка строк вида "имя = значение". Основные свойства: TitleCaptions - тип TStrings Заголовки Strings - тип TStrings список всех строк Доступ к именам и значениям: Strings->Names; Strings->Values; RowCount - число строк вместе с заголовком DisplayOptions - можно фиксировать размеры заголовков, ширину колонки имён.

1.5.5 GroupBox

Groupbox представляет из себя обычный box, за небольшим исключением - вокруг него по умолчанию рисуются линия, изображение которой можно менять при помощи стилей. Также groupbox поддерживает рисование заголовка в верхней части. Заголовок рисуется элементом caption. Caption имеет атрибут Label, в котором содержится заголовок окна. Caption также может быть контейнером, содержащим дочерние элементы.

1.5.6 PageControl

Многостраничный блокнот. Основные свойства: MultiLine-свойство, определяющее, разрешен ли вывод надписей на ярлычках в несколько строк. Pages (readonly) - массив компонентов типа TTabSheet, которые можно создавать, выбрав пункт NewPage из контекстного меню компонента PageControl; PageCount - число страниц; ActivePage - имя выбранной страницы (символьная строка). Страницы PageControl обычно используются в качестве контейнеров, при этом на каждой странице может быть свой набор компонентов. Чтобы сделать страницу активной, нужно выбрать ее в инспекторе объектов (либо щелкнуть мышью сначала на ярлычке, а потом на самой странице). У самих страниц наиболее важными являются свойства Pagelndex (0,1,...), указывающее порядок, в котором появляются страницы, и TabVisible, указывающее, видима ли данная страница.

1.5.7 Bevel

Компонент Bevel формально не является панелью, он не может служить контейнером для компонентов. Например, с помощью Bevel нельзя сгруппировать радиокнопки.

Однако, чисто зрительно компонент Bevel может использоваться как подобие панели. Стиль отображения Bevel определяется свойством Style, которое может принимать значения bsLowered -- утопленный, и bsRaised -- приподнятый, а контур компонента определяется свойством Shape, которое может принимать значения: bsBox -- прямоугольник, bsFrame -- рамка, bsSpacer -- пустое пространство, bsTopLine, bsBottomLine, bsLeftLine, bsRightLine -- соответственной верхняя, нижняя, левая и правая линии. В зависимости от значения Style линии могут быть утопленными или выступающими.

1.5.8 RadioButton

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

1.5.9 Button

Простейшей и, пожалуй, наиболее часто используемой кнопкой является кнопка Button, расположенная на странице библиотеки Standard. Основное с точки зрения внешнего вида свойство кнопки -- Caption (надпись). В надписях кнопок можно предусматривать использование клавиш ускоренного доступа, выделяя для этого один из символов надписи. Перед символом, который должен соответствовать клавише ускоренного доступа, ставится символ амперсанта «&». Этот символ не появляется в надписи, а следующий за ним символ оказывается подчеркнутым.

Тогда пользователь может вместо щелчка на кнопке нажать в любой момент клавишу Alt совместно с клавишей выделенного символа. Основное событие любой кнопки -- OnClick, возникающее при щелчке на ней. Именно в обработчике этого события записываются операторы, которые должны выполняться при щелчке пользователя на кнопке. Помимо этого есть еще ряд событий, связанных с различными манипуляциями клавишами и кнопками мыши. Свойство Cancel, если его установить в true, определяет, что нажатие пользователем клавиши Esc будет эквивалентно нажатию на данную кнопку. Это свойство целесообразно задавать равным true для кнопок «Отменить» в различных диалоговых окнах, чтобы можно было выйти из диалога, нажав на эту кнопку или нажав клавишу Esc. Свойство Default, если его установить в true, определяет, что нажатие пользователем клавиши ввода Enter будет эквивалентно нажатию на данную кнопку, даже если данная кнопка в этот момент не находится в фокусе. Правда, если в момент нажатия Enter в фокусе находится другая кнопка, то все-таки сработает именно кнопка в фокусе. Из методов, присущих кнопкам, имеет смысл отметить один -- Click. Выполнение этого метода эквивалентно щелчку на кнопке, т.е. вызывает событие кнопки OnClick. Этим можно воспользоваться, чтобы продублировать какими-то другими действиями пользователя щелчок на кнопке. Пусть, например, вы хотите, чтобы при нажатии пользователем клавиши с символом «С» или «с» в любой момент работы с приложением выполнялись операции, предусмотренные в обработчике события OnClick кнопки Button1. Поскольку неизвестно, какой компонент будет находиться в фокусе в момент этого события, надо перехватить его на уровне формы. Такой перехват осуществляется, если установить свойство формы KeyPreview в true. Тогда в обработчике события формы OnKeyPress можно написать оператор.

автоформат word интерфейс эмулирующий

1.5.10 Panel

Компонент Panel находится на вкладке Standard и применяется для улучшения внешнего вида формы, а также для группировки нескольких компонентов. Этот компонент по своим свойствам немного напоминает форму. Еще одно очень важное свойство - Align (Выравнивание). Это свойство часто используют не только у панелей, но и у многих других компонентов.

1.5.11 ListBox

Экземпляр класса TListBox представляет собой список. Основное свойство для списка - это Items. Тип у него - TStrings. Именно в нем и хранятся элементы нашего списка. Свойство ItemIndex служит для определения выделенного в списке элемента (оно доступно как для чтения, так и для записи). Элементы списка нумеруются с нуля. Свойство списка MultiSelect определяет, можно ли выделять несколько элементов списка одновременно. Если оно равно false (значение по умолчанию), то выделять несколько элементов нельзя, а если true, то можно.

Свойство Sorted определяет, сортируются ли элементы списка. По умолчанию оно равно false, и если установить его в true, то список будет отсортирован, и новые элементы будут вставляться не в конец, а в соответствующее сортировке место.

1.5.12 CheckListBox

Компонент находится в списке Common Controls палитры компонентов. Компонент checkedListBox является расширением ListBox. Он делает почти все, что делает ListBox, но дополнительно выводит окна контроля (флажки-переключатели), в которых можно делать отметку галочкой.

1.5.13 ComboBox

Элемент управления ComboBox применяется для хранения списка значений. Он сочетает в себе функциональные возможности списка ListBox и поля TextBox. В отличии от ListBox, в элементе управления ComboBox отображается только один элемент списка. Кроме того, у него отсутствует режим выделения нескольких элементов списка, но он позволяет вводить значения, используя поле ввода, как это делает элемент управления TextBox.

Свойство DropDownStyle - определяет интерфейс с пользователем (стиль и возожность достута к текстовому полю ComboBox). При значении свойства DropDown это выпадающий список с возможностью изменения текстового поля, при DropDownList - доступ к текстовому полю закрыт. При значении свойства Simple список постоянно открыт (естетвенно отсутствует кнопка раскрытия списка), а редактирование поля Text разрешено.

1.5.14 UpDown

Элемент управления UpDown выглядит как пара кнопок со стрелками. В изолированном виде это упрощенный вариант линейки прокрутки, но обычно UpDown используется не один, а совместно с каким-либо другим элементом управления, присоединяемым к нему с помощью свойства BuddyControl. Тогда нажатие кнопок со стрелками вызывает уменьшение или увеличение определенного значения в этом присоединенном элементе. Не допускается присоединение к UpDown элементов управления, которые не ограничиваются рамками какого-либо окна (таких, как, например, Label). Диапазон значений, регулируемых с помощью UpDown, определяется свойствами Min и Max; свойство Increment задает размер приращения, на которое изменяется значение при нажатии на кнопку. Свойство Wrap позволяет "зациклить" изменение значения, т. е. указать, что при максимальном значении нажатие на кнопку увеличения вызовет переход к минимальному значению и наоборот. Присоединить элемент управления к UpDown можно вручную, воспользовавшись свойством BuddyControl, или автоматически, с помощью свойства AutoBuddy. Во время разработки программы UpDown и присоединенный элемент управления ведут себя как один объект: они располагаются рядом, вместе перемещаются и меняют свой размер. Свойство Alignment определяет, будет ли UpDown находиться справа или слева от присоединенного элемента.

2. Практическая часть

На форму были помещены две кнопки (OK и Отмена). Для того чтобы исключить возможность изменения высоты и ширины формы, после запуска приложения, значение свойства BorderStyle было изменено на bsSingle. Так же для исключения возможности сворачивания и восстановления окна в свойстве BorderIcons значения biMinimize, biMaximize, biHelp меняются с true на false. Те же операции проводятся и с другими двумя формами. Для создания вкладок на Form 1 мною был использован компонент PageControl. Используя операцию New Page, было создано пять вкладок: автозамена, автоформат при вводе, автотекст, автоформат и смарт-теги.

На вкладку «автозамена» были помещены следующие компоненты:

Рисунок 1 (компоненты на форме №1)

При нажатии кнопок OK или Отмена, происходит закрытие формы.

Листинг 1 Обработчик событий для кнопок OK и Отмена

void __fastcall TForm1::Button2Click(TObject *Sender)

{Form1->Close();}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{Form1->Close();}

При снятии галочки с CheckBox8 «Замена при вводе», CheckBox9 «Автоматически исправлять орфографические ошибки» становится неактивным.

Листинг 2 Обработчик событий для CheckBox8 «Замена при вводе»

void __fastcall TForm1::CheckBox8Click(TObject *Sender)

{if(CheckBox8->Checked==true){CheckBox9->Enabled=true;}

else{CheckBox9->Enabled=false;}}

При нажатии на кнопку «Исключения…» происходит открытие второй формы, параметры которой идентичны первой (кроме параметров ширины и высоты).

Листинг 3 Обработчик событий для кнопки Исключения

void __fastcall TForm1::Button3Click(TObject *Sender)

{Form2->ShowModal();}

На форму 2 так же были помещены две кнопки (OK и Отмена). Так же как и на первой форме, параметры свойств BorderIcons и BorderStyle меняются. Для создания вкладок на Form 2 использован компонент PageControl. Используя операцию New Page, было создано три вкладок: первая буква, две прописные, прочие.

Рисунок 2 (компоненты на форме №2)

Рисунок 3 (компоненты на форме №2)

При выборе одного из компонентов в списке, внесенном в ListBox, выбранный компонент отражается в окне Edit.

Листинг 4 Обработчик событий для списка

void __fastcall TForm2::ListBox1Click(TObject *Sender)

{

int u = ListBox1->ItemIndex;

Edit1->Text=ListBox1->Items->Strings[u];

}

Рисунок 4 (компоненты на форме №2)

На вкладку «Автоформат при вводе» были помещены следующие компоненты:

Рисунок 5 (компоненты на форме №1)

На вкладку «Автотекст» были помещены следующие компоненты:

Рисунок 6 (компоненты на форме №1)

При выборе одного из компонентов в списке, внесенном в ListBox, выбранный компонент отражается в окне Edit и Panel.

Листинг 5 Обработчик событий для списка

void __fastcall TForm1::ListBox1Click(TObject *Sender)

{int u = ListBox1->ItemIndex; Edit1->Text=ListBox1->Items->Strings[u];

Panel1->Caption=ListBox1->Items->Strings[u];}

На вкладку «Автоформат» были помещены следующие компоненты:

Рисунок 7 (компоненты на форме №1)

На вкладку «Автоформат» были помещены следующие компоненты:

Рисунок 8 (компоненты на форме №1)

При снятии галочки с CheckBox37 «Добавить смарт-теги к тексту», CheckListBox1 становится неактивным.

Листинг 6 Обработчик событий для списка

void __fastcall TForm1::CheckBox37Click(TObject *Sender)

{

if(CheckBox37->Checked==false)

{CheckListBox1->Enabled=false;}

else {CheckListBox1->Enabled=true;}

}

При нажатии на кнопку «Параметры сохранения» происходит открытие второй формы.

Листинг 7 Обработчик событий для списка

void __fastcall TForm1::Button14Click(TObject *Sender)

{

Form3->ShowModal();

}

На форму 3 были помещены две кнопки (OK и Отмена). Так же как и на первой и второй форме, параметры свойств BorderIcons и BorderStyle меняются. Для создания вкладок на Form 3 так же использован компонент PageControl. Была создана одна вкладка: сохранение.

На вкладку «Сохранение» были помещены следующие компоненты:

Листинг 8 Обработчик событий для CheckBox15 «отключить средства»

void __fastcall TForm3::CheckBox15Click(TObject *Sender)

{

if(CheckBox15->Checked==false)

{ComboBox2->Enabled=false;}

else {ComboBox2->Enabled=true;}

}…

Для того, что бы связать UpDown и Edit1 в свойстве Associate компонента UpDown был указан компонент Edit1. В свойствах Min и Max мной были установлены значения 0 и 120.

Заключение

В результате курсовой работы был создан интерфейс, эмулирующий пункт меню Microsoft Office Word Сервис - параметры автозамены.

В ходе работы было изучено множество компонентов среды разработки Borland C++ Builder 6.0, а так же их свойства, методы и правила их использования.

Список использованной литературы

1. Архангельский А.Я. Программирование в C++Builder. - Издательство: Бином, 2010. - 1280с.

2. Липпман С.Б. Основы программирования на C++ М.: Вильямс, 2002.-256 с.

3. Страуструп Б. Язык программирования С++: Пер.с англ. - Спец. изд. - М.: Бином, 2001. - 1114 с.

4. Липпман С.Б. Основы программирования на C++. М.: Вильямс, 2002 256 с.

Приложение

Листинг файла Unit1.cpp

#include <vcl.h>

#pragma hdrstop

#include "Unit3.h"

#include "Unit2.h"

#include "Unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma link "CGRID"

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{PageControl1->ActivePageIndex=0;

Form1->Caption="Автозамена: русский(Россия)";

Label14->Caption="Для каждого типа данных, распознаваемого Word, можно определить действия,\nавтоматически выполняемые над этим данными";}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button3Click(TObject *Sender)

{Form2->ShowModal();}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button14Click(TObject *Sender)

{Form3->ShowModal();}

//---------------------------------------------------------------------------

void __fastcall TForm1::CheckBox37Click(TObject *Sender)

{if(CheckBox37->Checked==false)

{CheckListBox1->Enabled=false;}

else {CheckListBox1->Enabled=true;}}

//---------------------------------------------------------------------------

void __fastcall TForm1::ListBox1Click(TObject *Sender)

{int u = ListBox1->ItemIndex;

Edit1->Text=ListBox1->Items->Strings[u];

Panel1->Caption=ListBox1->Items->Strings[u];}

//---------------------------------------------------------------------------

void __fastcall TForm1::PageControl1Change(TObject *Sender)

{if(PageControl1->ActivePageIndex==0)

{Form1->Caption="Автозамена: русский(Россия)";}

else {Form1->Caption="Автозамена";}}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{Form1->Close();}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{Form1->Close();}

#include <vcl.h>

#pragma hdrstop

#include "Unit2.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm2 *Form2;

//---------------------------------------------------------------------------

__fastcall TForm2::TForm2(TComponent* Owner)

: TForm(Owner)

{PageControl1->ActivePageIndex=0;}

//---------------------------------------------------------------------------

void __fastcall TForm2::ListBox1Click(TObject *Sender)

{int u = ListBox1->ItemIndex; Edit1->Text=ListBox1->Items->Strings[u];}

//---------------------------------------------------------------------------

void __fastcall TForm2::ListBox3Click(TObject *Sender)

{int u = ListBox3->ItemIndex; Edit3->Text=ListBox3->Items->Strings[u];}

//---------------------------------------------------------------------------

void __fastcall TForm2::ListBox2Click(TObject *Sender)

{int u = ListBox2->ItemIndex;

Edit2->Text=ListBox2->Items->Strings[u];}

//---------------------------------------------------------------------------

void __fastcall TForm2::Button1Click(TObject *Sender)

{Form2->Close();}

//---------------------------------------------------------------------------

void __fastcall TForm2::Button2Click(TObject *Sender)

{Form2->Close();}

#include <vcl.h>

#pragma hdrstop

#include "Unit3.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm3 *Form3;

//---------------------------------------------------------------------------

__fastcall TForm3::TForm3(TComponent* Owner)

: TForm(Owner)

{Edit1->Clear();

CheckBox15->Checked==false;

ComboBox2->Enabled=false;

CheckBox12->Checked=false;}

//---------------------------------------------------------------------------

void __fastcall TForm3::CheckBox15Click(TObject *Sender)

{if(CheckBox15->Checked==false)

{ComboBox2->Enabled=false;}

else {ComboBox2->Enabled=true;}}

//---------------------------------------------------------------------------

void __fastcall TForm3::CheckBox12Click(TObject *Sender)

{if(CheckBox12->Checked==false)

Edit1->Clear();}

//---------------------------------------------------------------------------

void __fastcall TForm3::UpDown1Click(TObject *Sender, TUDBtnType Button)

{if(UpDown1->Increment==1)

CheckBox12->Checked=true;}

//---------------------------------------------------------------------------

void __fastcall TForm3::Button1Click(TObject *Sender)

{Form3->Close();}

//---------------------------------------------------------------------------

void __fastcall TForm3::Button2Click(TObject *Sender)

{Form3->Close();}

Размещено на Allbest.ur


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.