Разработка визуального редактора

Разработка программы-помощника при редактировании или создании HTML (HyperText Markup Language) страничек. Обзор методов и алгоритмов решения поставленной задачи. Описание программы для программиста. Среда функционирования и инсталляция программы.

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

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

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

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

Содержание

  • Введение
  • 1. Обзор методов и алгоритмов решения поставленной задачи
  • 1.1 Библиотека MSHTML
  • 1.2 Интерфейс Windows forms
  • 2. Обоснование выбранных методов и алгоритмов
  • 2.1 Технические требования
  • 2.2 Выбор методов и алгоритмов решения задачи
  • 3. Описание программы для программиста
  • 3.1 Концепция построения программы
  • 3.2 Функциональная модель
  • 3.3 Тестирование
  • 4. Описание алгоритмов решения задачи
  • 4.1 Описание алгоритмов
  • 4.2 Инструменты разработки
  • 5. Руководство пользователя
  • 5.1 Общие сведения о программе
  • 5.2 Среда функционирования
  • 5.3 Инсталляция
  • 5.4 Сообщения системы
  • 5.5 Системные требования
  • 5.6 Элементы управления
  • Заключение
  • Литература
  • Приложение А (обязательное)
  • Приложение Б (обязательное)

Введение

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

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

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

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

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

Разрабатываемый мною визуальный редактор html-кода является созданным приложением на основе библиотеки mshtml, которая используется в браузере MS Internet Explorer. Программа должна обеспечивать ввод и редактирование текста в окне представления и отображать полосы прокрутки. Предусмотреть однооконный режим редактирования файлов. Реализовать такие функции как: возможность формирования текста на базе стандартных стилей, создание произвольных пользовательских стилей, возможность логического форматирования текста (подчеркивание, курсив, жирный шрифт), возможность вставки в документ картинок, гиперссылок.

Пояснительная записка является полным описанием готового программного средства и принципа его работы.

1. Обзор методов и алгоритмов решения поставленной задачи

1.1 Библиотека MSHTML

MSHTML (так же известен как Trident) - браузерный движок для Microsoft Internet Explorer. Впервые Trident был реализован в четвёртой версии Internet Explorer (октябрь 1997 года), и с тех пор подвергался постоянным улучшениям и переработкам.

Trident был разработан как программный компонент, позволявший разработчикам программного обеспечения легко добавлять возможность просмотра веб-страниц в их собственные приложения. Он использует технологию COM (компонентную модель объектов) для просмотра и правки веб-страниц в любом окружении, поддерживающем интерфейс этой модели - например, в C++ или .NET. Соответствующий элемент управления может быть добавлен, скажем, в программу, написанную на C++ - и Trident будет использоваться для доступа к заранее заданной веб-странице, для чтения или изменения находящейся на ней информации. События элемента управления будут перехватываться и передаваться в основную программу. Функции ядра Trident станут доступны при добавлении библиотеки mshtml.dll к программному проекту.

Кроме Trident'а, Microsoft также использует ядро Tasman, применяемое в версии Internet Explorer для операционной системы Mac OS X. Ядро Tasman имеет улучшенную (в сравнении с Trident) поддержку стандартов. Несмотря на то, что разработка Internet Explorer для Mac OS была прекращена, развитие ядра Tasman продолжается: наиболее свежая версия ядра была представлена в офисном пакете Microsoft Office 2004 для Mac OS.[9]

1.2 Интерфейс Windows forms

Windows Forms - интерфейс программирования приложений (API), отвечающий за графический интерфейс пользователя и являющийся частью Microsoft .NET Framework. Данный интерфейс упрощает доступ к элементам интерфейса Microsoft Windows за счет создания обёртки для существующего Win32 API в управляемом коде. Причём управляемый код - классы, реализующие API для Windows Forms, не зависят от языка разработки. То есть программист одинаково может использовать Windows Forms как при написании ПО на C++, С#, так и на VB.Net, J# и др.

Приложение Windows Forms представляет собой событийно-ориентированное приложение, поддерживаемое Microsoft .NET Framework. В отличие от пакетных программ, большая часть времени тратится на ожидание от пользователя каких-либо действий, как, например, ввод текста в текстовое поле или клика мышкой по кнопке.

В Windows Forms форма - это видимая поверхность, на которой выводится информация для пользователя. Обычно приложение Windows Forms строится путем помещения элементов управления на форму и написания кода для реагирования на действия пользователя, такие как щелчки мыши или нажатия клавиш. Элемент управления - это отдельный элемент пользовательского интерфейса, предназначенный для отображения или ввода данных.

При выполнении пользователем какого-либо действия с формой или одним из ее элементов управления создается событие. Приложение реагирует на эти события с помощью кода и обрабатывает события при их возникновении. [9]

Windows Forms включает широкий набор элементов управления, которые можно добавлять на формы: текстовые поля, кнопки, раскрывающиеся списки, переключатели и даже веб-страницы. Список всех элементов управления, которые можно использовать в форме, представлены в разделе Элементы управления для использования в формах Windows Forms. Если существующий элемент управления не удовлетворяет потребностям, в Windows Forms можно создать пользовательские элементы управления с помощью класса UserControl.

Windows Forms рассматривается как замена более старой и сложной библиотеке MFC, изначально написанной на языке C++.

2. Обоснование выбранных методов и алгоритмов

2.1 Технические требования

Техническое задание данной работы требует разработать программу для визуального редактирования HTML-кода.

Программа должна быть разработана на Си подобном языке и отвечать следующим требованиям:

– наличие графического интерфейса;

– быстрая в использовании;

– возможность формирования текста;

– возможность логического форматирования текста подчеркивание;

– возможность логического форматирования текста курсив;

– возможность логического форматирования текста жирный шрифт;

– возможность вставки в документ картинок;

– возможность вставки в документ гиперссылок.

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

Данная программа должна иметь простой и понятный пользователю интерфейс, выглядеть красиво, любые действия должны быть интуитивно понятными и не вызывать трудностей при работе с программой.

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

2.2 Выбор методов и алгоритмов решения задачи

Рассмотренные в предыдущем разделе методы решения поставленной задачи были проанализированы и принято решение использовать в качестве технологии разработки библиотеку mshtml.

Дальнейшее расширение функционала программы, велась с помощью импортируемого из библиотеки mshtml - интерфейса IHTMLDocument2.

Интерфейс IHTMLDocument2 предоставляет различные методы и свойства для работы с документом. Приоритетная возможность, которая стала максимально полезна для создания визуального html редактора это -designMode, включив который, мы получаем не ограниченные возможности по редактированию содержимого документа. Многие функции редактирования были изначально в встроенные в компонент и активировать которые возможно с помощью горячих клавиш. С помощью функции ExecComd выполняться основные команды редактирования в редакторе такие как:

– bold;

– italic;

– underline;

– insertImage;

– justifyLeft;

– justifyCenter;

– justifyRight;

– justifyFull;

– indent;

– createLink.

3. Описание программы для программиста

3.1 Концепция построения программы

Список всех классов приведён на рисунке 3.1.

Рисунок 3.1 - Диаграмма классов программы

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

3.2 Функциональная модель

Данное ПО предоставляет следующие основные функции:

- режим просмотра html документов;

- режим редактирования html документов;

- открывать, создавать и сохранять .html файлы

- вставлять в документ изображения

- вставлять в документ гиперссылки

- форматировать текст документа

- выход из программы.

Главными процессами данного ПО являются процессы взаимодействия пользователей с графическими элементами программы для осуществления редактирования документа.

3.3 Тестирование

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

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

Данная программа была протестирована на различных компьютерах, на ОС Windows (7,8,10), различными пользователями. Никаких ошибок и несоответствия к предъявленным требованиям к данному ПО не обнаружено.

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

В результате чего, можно сделать вывод, что приложение игра «html-editor», пригодно для использования конечным пользователем.

4. Описание алгоритмов решения задачи

4.1 Описание алгоритмов

Рассмотрим один из основных алгоритмов, задействованных в программе, - алгоритм передвижения мяча. Блок-схема алгоритма изображена на рисунке 4.1.

Рисунок 4.1 - блок-схема алгоритма передвижения шара

Блок 1 и 9 начало и конец алгоритма соответственно.

Блок 2 при запуске программы инициализирует необходимые средства для генерации и отображения документов html, а также создает новый пустой документ.

Блок 3 дает возможность открыть документ или воспользоваться новым пустым документом.

Блок 4 осуществляет проверку находиться ли документ в режиме редактирования или в режиме просмотра. Если условие истинное, то мы переходим к блоку 5, в противном случае возвращаемся к блоку 3.

Блок 5 Пользователь вводит различные данные, добавляет изображения

Блок 6 Различные операции редактирования текста такие как: копировать, вырезать, вставить, жирный текст, наклонный текст, подчеркнутый текст, отменить, повторить, гиперссылка, найти;

Блок 7 условный, пользователю предлагается сохранить документ или выйти без сохранения. Если пользователь согласился, то он переходит к блоку 8, иначе к блоку 9.

редактирование инсталляция html

4.2 Инструменты разработки

Среда разработки: IDE C++ Builder XE8.

C++Builder - это отмеченный наградами набор инструментов быстрой разработки приложений на C++ для нативной разработки под Windows, Mac и для мобильных устройств, с расширенной поддержкой облаков и IoT. Он оснащен обновленным CLANG 3.3 и поддержкой C++11 в самых быстрых инструментах разработки для Windows 10 и множества устройств. C++Builder это ваш выбор для сверхбыстрой корпоративно-ориентированной разработки. Посмотрите на увеличенный объем памяти для крупных проектов, расширенную поддержку нескольких мониторов, улучшенный инспектор объектов и многое другое. C++Builder обеспечивает 5-кратно увеличенную скорость разработки и развертывания на нескольких настольных, мобильных, облачных средах и платформах баз данных, включая 32-разрядные и 64-битные ОС Windows 10. [10]

5. Руководство пользователя

5.1 Общие сведения о программе

Программа разработана для демонстрации возможностей языка C++ и может использоваться для пользователей, которые не знакомы с языком html. Так же программа имеет простой, интуитивно понятный и комфортный интерфейс, что облегчает работу с ней и даёт возможность использования без предварительного изучения инструкций.

Программа предназначена для нескольких основных целей. Она может использоваться для облегчения работы, как помощник при редактировании или созданий html страничек. Программа может использоваться любыми пользователями, которые хотят быстро и успешно отредактировать html страничку. Также программа может использоваться для обучения. Так как после редактирования файла пользователь может сохранить свою работу и просмотреть сгенерированный html код.

5.2 Среда функционирования

Средой функционирования являются операционные системы платформы Windows NT: Windows 7, Windows 8, Windows 10.

5.3 Инсталляция

Для того чтобы полноценно пользоваться данным программным продуктом, необходимо скопировать папку с программой на жесткий диск. Однако программа полностью независимая и может запускаться со съёмных носителей. Для запуска игры необходимо запустить файл «html-editor.exe» из каталога ЕХЕ.

5.4 Сообщения системы

Главные сообщения пользователю представлены отдельными диалоговыми окнами, появляющимися на главном окне после определённых действий.

Если пользователь нажал кнопку добавления изображения в документ, то он увидит сообщение в соответствии с рисунком 5.1.

Рисунок 5.1 - Сообщение вставки изображения.

Если пользователь нажал кнопку добавления ссылки в документ, то он увидит всплывающие окошко в соответствии с рисунком 5.2.

Рисунок 5.2 - Сообщение добавления ссылки.

При выполнении поиска перед пользователем появляется модальное окошко с соответствии с рисунком 5.3.

Рисунок 5.3 - Модальное окно поиска.

При возникновении непредвиденной ошибки, пользователь увидит следующее сообщение представление на рисунке 5.4.

Рисунок 5.4 - Модальное окно критической ошибки.

5.5 Системные требования

Для нормальной работы программы требуется компьютер с характеристиками:

процессор 1000 Мгц или выше;

– ОЗУ 512 Мб или выше;

– свободным дисковым пространством не менее 5 Мб;

– видеоадаптер с разрешением не хуже SVGA, 1024x768, 16 бит цветность;

Требования к ОС:

– Windows 7;

– Windows 8;

– Windows 10;

– MS Internet Explore

Программа может работать и в более ранних графических операционных системах, но не так стабильно.

На любом этапе работы приложения можно воспользоваться следующими функциями меню:

– «Новый документ» - позволяет создать новый чистый документ;

– «Открыть» - позволяет открыть html документ;

– «Сохранить» - позволяет сохранить изменения;

– «Очистить» - очищает документ;

– «Редактировать» - переключает документ в режим правки;

– «Заблокировать» - переключает документ в режим просмотра;

– «Выход» - выход из приложения.

5.6 Элементы управления

В качестве элементов управления используются панель быстрого форматирования текста, представленная на рисунке 5.5

Рисунок 5.5 - Панель форматирования текста.

Также сочетания клавиш и мышь, которые выполняют основные функции редактирования:

– Ctrl + C - Копировать;

– Ctrl + X - Вырезать;

– Ctrl + V - Вставить;

– Ctrl + B - Жирный текст;

– Ctrl + I - Наклонный текст;

– Ctrl + U - Подчеркнутый текст;

– Ctrl + Z - Отменить;

– Ctrl + Y - Повторить;

– Ctrl + K - Гиперссылка;

– Ctrl + F - Найти;

– Ctrl + A - Выделить всё;

– Ctrl + Left-Click - Выделить блок.

Заключение

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

Параллельно с разработкой программы были изучены возможности и особенности программного обеспечения С++ Builder. Приобретены навыки построения UML-диаграмм при помощи программы С++ Builder XE8. Изучены методы взаимодействия форм с компонентами. Испытания созданного приложения позволили исключить большое количество возникающих ошибок.

В целом создание данного программного продукта привело к более детальному овладению практическими навыками проектирования и разработки законченного, отлаженного и протестированного программного продукта с использованием языка высокого уровня С++ и закрепить и углубить теоретические знания по предмету «Конструирование программ и языки программирования».

Были выявлены и устранены ошибки и недостатки программы. Проведено функциональное и полное тестирование, в ходе которых программа приобрела законченный вид полностью работающего продукта.

Литература

1. Методические указания по выполнению курсовых и дипломных проектов. Специальность: 2-40 02 01 «Программное обеспечение информационных технологий»;

2. Культин Н.Б. Самоучитель С++ Builder. - СПб.: БХВ-Петербург,2005. - 320с.: ил.

3. Культин Н.Б. С/С++ в задачах и примерах. - СПб.: БХВ-Петербург, 2006. - 288с.: ил.

4. Borland Builder C++. Освой самостоятельно. - СПб.: Питер, 2005. - 702с.: ил.

5. Холзнер С. Visual C++ 6. Учебный курс. - СПб.: Питер, 2006. - 570с.: ил.

6. Красиков И.В., Красикова И.Е. Алгоритмы. Просто как дважды два. - М.: Эксмо,2006. - 256с.: ил.

7. Карпов Б., Баранова Т. С++. Специальный справочник (2-е издание). - СПб.: Питер, 2005. - 381с.: ил.

8. Франка П. С++: Учебный курс. - СПб.: Питер, 2005. - 522с.: ил.

9. Википедия - свободная энциклопедия [Электронный ресурс]. - Электронные данные. - Режим доступа: http://ru.wikipedia.org/wiki/Веб-сайт;

10. Embarcadero Website [Электронный ресурс]. - Электронные данные. - Режим доступа: https://www.embarcadero.com/ru/products/cbuilder

Приложение А (обязательное)

Текст программы

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

#include <vcl.h>

#pragma hdrstop

#include "mshtml.h"

#include "home.h"

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

#pragma package(smart_init)

#pragma resource "*.dfm"

using namespace std;

TForm1 *Form1;

IDispatch *Disp = NULL;

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

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

}

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

void __fastcall TForm1::FormCreate(TObject *Sender)

{

this->WebBrowser1->Navigate("about:<html><body></body></html>");

}

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

void __fastcall TForm1::BitBtn1Click(TObject *Sender)

{

if (this->WebBrowser1->Document)

{

IHTMLDocument2 *html;

this->WebBrowser1->Document->QueryInterface<IHTMLDocument2>(&html);

BSTR bstrMode;

html->get_designMode(&bstrMode);

BSTR chek = L"On";

// Смена режима редактиования на режим просмотра )

if ( wcscmp(bstrMode , chek) ) {

html->put_designMode(L"On");

this->StatusBar1->Panels->operator [](1)->Text = "Редактирование";

this->BitBtn1->Caption = "Заблокировать";

}else{

html->put_designMode(L"Off");

this->StatusBar1->Panels->operator [](1)->Text = "Просмотр";

this->BitBtn1->Caption = "Редактировать";

}

html->Release();

}

}

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

void __fastcall TForm1::ButtonGroup1Items1Click(TObject *Sender)

{

if (this->WebBrowser1->Document)

{

IHTMLDocument2 *html;

TStringList *t = new TStringList;

this->WebBrowser1->Document->QueryInterface<IHTMLDocument2>(&html);

IHTMLElement *pElement;

html->get_body(&pElement);

pElement->get_parentElement(&pElement);

wchar_t *tmp;

pElement->get_outerHTML(&tmp);

t->Text = tmp;

if (this->SaveDialog1->Execute()){

t->SaveToFile( this->SaveDialog1->FileName);

}

pElement->Release();

html->Release();

}

}

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

void __fastcall TForm1::ButtonGroup1Items0Click(TObject *Sender)

{

if(this->OpenDialog1->Execute()){

Application->ProcessMessages();

TStringList *t = new TStringList;

t->LoadFromFile(this->OpenDialog1->FileName);

if (this->WebBrowser1->Document) {

this->WebBrowser1->Navigate("about:"+t->Text+"\0");

this->StatusBar1->Panels->operator [](1)->Text = "Просмотр";

this->BitBtn1->Caption = "Редактировать";

}

}

}

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

void __fastcall TForm1::ButtonGroup1Items3Click(TObject *Sender)

{

IHTMLDocument2 *html;

this->WebBrowser1->Document->QueryInterface<IHTMLDocument2>(&html);

html->put_designMode(L"Off");

this->StatusBar1->Panels->operator [](1)->Text = "Просмотр";

this->BitBtn1->Caption = "Редактировать";

this->WebBrowser1->Navigate("about:blank");

}

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

void __fastcall TForm1::ButtonGroup1Items2Click(TObject *Sender)

{

if(this->WebBrowser1->Document){

IHTMLDocument2 *html;

this->WebBrowser1->Document->QueryInterface<IHTMLDocument2>(&html);

html->put_designMode(L"Off");

this->WebBrowser1->Navigate("about:blank");

this->StatusBar1->Panels->operator [](1)->Text = "Просмотр";

this->BitBtn1->Caption = "Редактировать";

html->Release();

}

}

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

void ExecComd(BSTR cmd, VARIANT_BOOL showUI ){

if ( Form1->WebBrowser1->Document)

{

IHTMLDocument2 *html;

Form1->WebBrowser1->Document->QueryInterface<IHTMLDocument2>(&html);

VARIANT var;

VARIANT_BOOL receive;

html->execCommand(cmd,showUI,var, &receive);

html->Release();

}

}

void ExecComd2(BSTR cmd, VARIANT_BOOL showUI,VARIANT var ){

if ( Form1->WebBrowser1->Document)

{

IHTMLDocument2 *html;

Form1->WebBrowser1->Document->QueryInterface<IHTMLDocument2>(&html);

VARIANT_BOOL receive;

html->execCommand(cmd,showUI,var, &receive);

html->Release();

}

}

void __fastcall TForm1::Image5Click(TObject *Sender){ExecComd(L"Bold",true);}

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

void __fastcall TForm1::Image8Click(TObject *Sender){ExecComd(L"Italic",true);}

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

void __fastcall TForm1::Image6Click(TObject *Sender){ExecComd(L"underline",true);}

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

void __fastcall TForm1::Image2Click(TObject *Sender){ExecComd(L"InsertImage",true);}

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

void __fastcall TForm1::Image9Click(TObject *Sender){ExecComd(L"JustifyLeft",true);}

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

void __fastcall TForm1::Image12Click(TObject *Sender){ExecComd(L"JustifyCenter",true);}

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

void __fastcall TForm1::Image10Click(TObject *Sender){ExecComd(L"JustifyRight",true);}

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

void __fastcall TForm1::Image11Click(TObject *Sender){ExecComd(L"justifyFull",true);}

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

void __fastcall TForm1::Image1Click(TObject *Sender){ExecComd(L"Indent",true);}

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

void __fastcall TForm1::Image3Click(TObject *Sender){ExecComd(L"CreateLink",true);}

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

void __fastcall TForm1::BitBtn2Click(TObject *Sender)

{

if (RichEdit2->Text.Trim() == "" || RichEdit1->Text.Trim() == "") {

Beep();

return;

}

start = clock();

TStringList* tmpList = new TStringList;

tmpList->Assign(RichEdit2->Lines);

AnsiString procent = "";

for(int i=0; i < tmpList->Count ; i++){

AnsiString test = tmpList->operator [](i).Trim();

if (test.Length() < 3 ) {

continue;

}

TStringList* result = search(test, RichEdit1->Lines->Text);

if (result != NULL) {

AppendStr(procent,tmpList->operator [](i));

for(int i=0; i < result->Count ; i++){

// Form1->Memo1->Lines->Add(test);

RichEdit1->SelStart = StrToInt(result->operator [](i));

RichEdit1->SelLength = test.Length();

RichEdit1->SelAttributes->Color = clRed;

}

}

test = tmpList->operator [](i);

AnsiString noop = AnsiString::StringOfChar('ђ',test.Length());

tmpList->Text = StringReplace(tmpList->Text, test, noop, TReplaceFlags() << rfReplaceAll);

}

clock_t tmpl = clock();

Label4->Caption = "Текст уникален на " + FloatToStr(100.0 - (procent.Length() / (RichEdit1->Text.Length() / 100))) + "%";

log( "", "");

ADOTable1->Insert();

ADOTable1->Fields->operator [](2)->AsDateTime = Time();

ADOTable1->Fields->operator [](2)->AsString =FloatToStr((tmpl - start) / CLK_TCK)+" s.";

ADOTable1->Fields->operator [](3)->AsWideString = RichEdit2->Text.Trim();

ADOTable1->Fields->operator [](4)->AsWideString = RichEdit2->Text.Trim();

ADOTable1->Post();

}

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

void __fastcall TForm1::Button1Click(TObject *Sender)

{

RichEdit1->Lines->Clear();

RichEdit2->Lines->Clear();

LabeledEdit1->Text = "";

}

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

void __fastcall TForm1::SpeedButton1Click(TObject *Sender)

{

if (!OpenTextFileDialog1->Execute()) return;

RichEdit1->Lines->LoadFromFile(OpenTextFileDialog1->FileName);

}

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

void __fastcall TForm1::SpeedButton2Click(TObject *Sender)

{

if (!OpenTextFileDialog1->Execute()) return;

RichEdit2->Lines->LoadFromFile(OpenTextFileDialog1->FileName);

}

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

void __fastcall TForm1::SpeedButton3Click(TObject *Sender)

{

if (!SaveTextFileDialog1->Execute()) return;

RichEdit1->Lines->SaveToFile(SaveTextFileDialog1->FileName);

}

Приложение Б (обязательное)

Экранные формы

Рисунок Б.1 - Главная форма

Рисунок Б.1 - Форма поиска

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


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

  • Общая характеристика языка разметки гипертекста Hypertext Markup Language. Структура HTML-документа. Обзор основных возможностей HTML. Элементы современного дизайна Web-страниц. Анализ практического применения HTML (на примере обучающих программ).

    курсовая работа [47,9 K], добавлен 24.11.2012

  • Изучение особенностей растровых и векторных графических редакторов. Создание графического редактора: выбор языка программирования, разработка структуры программы и алгоритма работы. Описание интерфейса программы. Руководство программиста и пользователя.

    курсовая работа [1,3 M], добавлен 28.07.2013

  • Обзор методов и подходов решения поставленной задачи аппроксимации логического вывода экспертной системы. Разработка и описание метода сетевого оператора для решения данной задачи. Разработка алгоритма решения. Проведение вычислительного эксперимента.

    дипломная работа [1,5 M], добавлен 23.02.2015

  • Реализация информационной системы для компаний по продаже недвижимости. Обзор методов решения поставленной задачи. Описание программы для программиста. Диаграмма классов: FlatBase, Flat, House, Commercial, Human, ContH. Способы и алгоритмы решения задачи.

    курсовая работа [1,6 M], добавлен 18.08.2014

  • Анализ предметной области. Обзор программ-аналогов. Рассмотрение средств решения поставленной задачи. Проектирование структуры программы и базовых алгоритмов. Изучение руководства программиста и пользователя. Проектирование структуры базы данных.

    курсовая работа [1,0 M], добавлен 14.11.2017

  • Термин HTML (HiperText Markup Language) и его реализация. Программы просмотра страниц написанных на зыке манипулирования гипертекстами. Характеристика специальных программ – браузеров: Google Chrome, Opera, Mozilla Firefox. Структура HTML-страницы.

    контрольная работа [118,8 K], добавлен 05.04.2015

  • Изучение условий поставленной задачи и используемых данных для разработки программы хранения информации о рейсах поезда. Описание разработанных функций, листинга, блок-схем алгоритмов и дерева функции. Рассмотрение сценария диалога данной программы.

    курсовая работа [532,7 K], добавлен 20.07.2014

  • Разработка игры "Экзамен" с применением объектно-ориентированного программирования и языка Java (в среде Eclipse Helios). Структура программы и алгоритм решения задачи. Описание методов и переменных. Экспериментальное тестирование и оценка программы.

    курсовая работа [122,5 K], добавлен 19.05.2011

  • Разработка алгоритма решения задачи численного интегрирования методом трапеции. Словесное описание и блок-схема разработанного алгоритма программы. Описание интерфейса, главного окна и основных форм программы. Проверка работоспособности программы.

    курсовая работа [1,4 M], добавлен 16.03.2012

  • Разработка компьютерной программы - автоматического телефонного спавочника. Описание алгоритма программы. Описание последовательности действия при составлении и редактировании базы данных. Основные операторы и группы операторов. Анализ программы.

    курсовая работа [21,7 K], добавлен 29.10.2008

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