Создание программы текстового редактора

Необходимые компоненты и порядок составления текстового редактора. Текст программы решения задачи на языке программирования C++. Контрольный пример работы текстового редактора. Создание и произведение операции форматирования простого документа.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 03.09.2011
Размер файла 1,6 M

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

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

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

Оглавление

  • 1. Введение
    • 2. Постановка задачи
      • 3. Алгоритм решения задачи
      • 4. Текст программы решения задачи на языке программирования C++
      • 5. Контрольный пример
      • 6. Результат работы программы
      • 7. Заключение
      • 8. Список литературы

1. Введение

C++ (произносится «си плюс плюс») -- компилируемый статически типизированный язык программирования общего назначения. Поддерживая разные парадигмы программирования, сочетает свойства как высокоуровневых, так и низкоуровневых языков. В сравнении с его предшественником -- языком C, -- наибольшее внимание уделено поддержке объектно-ориентированного и обобщённого программирования. Название «C++» происходит от языка C, в котором унарный оператор ++ обозначает инкремент переменной.

Язык возник в начале 1980-х годов, когда сотрудник фирмы Bell Laboratories Бьёрн Страуструп придумал ряд усовершенствований к языку C под собственные нужды. До начала официальной стандартизации язык развивался в основном силами Страуструпа в ответ на запросы программистского сообщества.

Являясь одним из самых популярных языков программирования, C++ широко используется для разработки программного обеспечения. Область его применения включает создание операционных систем, разнообразных прикладных программ, драйверов устройств, приложений для встраиваемых систем, высокопроизводительных серверов, а также развлекательных приложений (например, видеоигры). Существует несколько реализаций языка C++ -- как бесплатных, так и коммерческих. Их производят Проект GNU, Microsoft, Intel и Embarcadero (Borland). C++ оказал огромное влияние на другие языки программирования, в первую очередь на Java и C#.

При создании C++ Бьёрн Страуструп стремился сохранить совместимость с языком C. Множество программ, которые могут одинаково успешно транслироваться как компиляторами C, так и компиляторами C++, довольно велико -- отчасти благодаря тому, что синтаксис C++ был основан на синтаксисе C.

2. Постановка задачи

Тема моей курсовой работы: «Создание программы - текстового редактора».

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

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

3. Алгоритм решения задачи

Компоненты, необходимые для составления программы:

RichEdit - содержит команды для работы с текстом и буфером обмена

SpeedBar - панель инструментов с расположенными на ней кнопками

MainMenu - главное меню программы

OpenDialog - диалог для кнопки «Открыть»

SaveDialog - диалог для кнопки «Сохранить»

FontDialog - диалог для кнопки «Шрифт»

PrintDialog - диалог для кнопки «Печать»

PopupMenu - контекстное меню

SpeedButton - универсальная кнопка

ComboBox - «выпадающий» список

Label - текстовая метка

UpDown - кнопка «Up\Down»

StatusBar - панель статуса

Image - изображение

Bevel - разделитель

Все компоненты добавляются путем выбора нужного на панели инструментов программы C++ Builder 6 , затем нажатием левой клавишей мыши на форме

Процесс построения:

Создадим меню быстрого запуска. Для этого перенесем на объект SpeedBar 15 кнопок SpeedButton и придадим им соответствующую форму (Рис. 1)

Рис. 1

Затем во вкладке Properties зададим кнопкам значки, и соответствующие коды (путем двойного щелчка на элементе) (Рис. 2)

Рис. 2

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

В результате проделанных действий получится меню быстрого запуска (Рис. 3)

Рис. 3

Далее, добавляем на форму элементы RichEdit, MainMenu, OpenDialog, SaveDialog, FontDialog, PrintDialog, PopupMenu, ComboBox, Edit, UpDown, Label и StatusBar. Расположим их в удобном для использования порядке (Рис 4.)

Рис. 4

Зададим соответствующие имена компонентам ComboBox, Label, RichEdit и MainMenu через вкладку properties из Object Inspector. (Рис. 5)

Рис. 5

Через компонент MainMenu создадим главное меню программы. Для этого дважды щелкнем по пиктограмме MainMenu, после чего откроется окно редактирования главного меню. (Рис. 6)

Рис. 6

Через него создадим необходимые пункты меню (правая клавиша мыши -> insert) (Рис. 7)

Рис. 7

Создадим окно «о программе» . Для этого добавим новую форму через

File -> new -> form. Добавим в нее элементы Button, Image, Bevel, Label. Через компонент Label зададим имя автора и год создания программы.

Компоненту Image присвоим изображение-пиктограмму программы.

Компоненту Button зададим имя «OK», после нажатия на которую окно должно закрываться. (Рис. 8)

Рис. 8

Основное окно и компоненты (Рис. 9):

Рис. 9

Обозначения:

1 - Кнопка «Новый файл»

2 - Кнопка «Открыть»

3 - Кнопка «Сохранить»

4 - Кнопка «Печать»

5 - Кнопка «Отмена»

6 - Кнопка «Копировать»

7 - Кнопка «Вставить»

8 - Кнопка «Вырезать»

9 - Главное меню

10 - Панель форматирования текста

11 - Поле для ввода текста

4. Текст программы решения задачи на языке программирования C++

//Программа для редактирования текста Diamond PAD

//Долгих Антон 2010. Группа ПИЭ-091

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

#include <vcl.h>

#pragma hdrstop

#include <windows.hpp>

#include <stdlib.h>

#include <stdio.h>

#include "Romain.h"

#include "RichAbt.h"

#include "ReConst.hpp"

#include "reinit.hpp"

const float RulerAdj = 4.0/3.0;

const int GutterWid = 6;

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

#pragma resource "*.dfm" TMainForm *MainForm;

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

__fastcall TMainForm::TMainForm(TComponent *Owner)

: TForm(Owner) { SetFileName(Reconst_SUntitled); }

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

template<class T> int AsInt(T Param)

{ return static_cast<int>(Param);}

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

void __fastcall TMainForm::SelectionChange(TObject */*Sender*/)

{

TParaAttributes *Paragraph = RichEdit1->Paragraph;

TTextAttributes *SelAttributes = RichEdit1->SelAttributes;

char sizebuf[6]; try

{FUpdating = True;

FirstInd->Left = AsInt(Paragraph->FirstIndent*RulerAdj) - 4 + GutterWid;

LeftInd->Left = AsInt((Paragraph->LeftIndent + Paragraph->FirstIndent)

* RulerAdj) - 4 + GutterWid;

RightInd->Left = Ruler->ClientWidth-6-AsInt((Paragraph->RightIndent + GutterWid) * RulerAdj);

BoldButton->Down = SelAttributes->Style.Contains(fsBold);

ItalicButton->Down = SelAttributes->Style.Contains(fsItalic);

UnderlineButton->Down = SelAttributes->Style.Contains(fsUnderline);

BulletsButton->Down = static_cast<bool>(Paragraph->Numbering);

FontSize->Text = itoa(SelAttributes->Size, sizebuf, 10);

FontName->Text = SelAttributes->Name;

switch(AsInt(Paragraph->Alignment))

{case 0:

LeftAlign->Down = True;

break;

case 1:

RightAlign->Down = True;

break;

case 2:

CenterAlign->Down = True;

break; } }__finally{FUpdating = False;}}

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

TTextAttributes *__fastcall TMainForm::CurrText(void)

{return RichEdit1->SelAttributes;}

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

int __stdcall EnumFontsProc(TLogFontA &LogFont, TTextMetricA &/*TextMetric*/,

int /*FontType*/, Pointer Data)

{TCharsetObject *FontCharset; TStrings *Strings = static_cast<TStrings *>(Data);

FontCharset = new TCharsetObject(AsInt(LogFont.lfCharSet)); Strings->AddObject(LogFont.lfFaceName, FontCharset); return 1;}

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

void __fastcall TMainForm::GetFontNames(void)

{ HDC hDC = GetDC(0);

void * cTmp = static_cast<void *>(FontName->Items);

EnumFonts(hDC, NULL, (FONTENUMPROC) EnumFontsProc, (long) cTmp );

ReleaseDC(0,hDC);

FontName->Sorted = True; }

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

void __fastcall TMainForm::SetFileName(const AnsiString FileName)

{LPSTR lpBuf = new char[MAX_PATH]; sprintf(lpBuf, Reconst_SPercent_s.c_str(), ExtractFileName(FileName).c_str(), Application->Title.c_str() );

Caption = lpBuf; FFileName = FileName; delete lpBuf; }

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

void __fastcall TMainForm::CheckFileSave(void)

{ if(RichEdit1->Modified) { switch(MessageBox(Handle, Reconst_SSaveChanges.c_str(),

Reconst_SConfirmation.c_str(),MB_YESNOCANCEL | MB_ICONQUESTION))

{case ID_YES: FileSaveClick(this); break; case ID_CANCEL: Abort(); }; } }

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

void __fastcall TMainForm::SetupRuler(void)

{ int iCtr = 1; char sTmp[201]; while (iCtr < 200) {sTmp[iCtr] = 9;

iCtr++; sTmp[iCtr] = '|'; iCtr++; } Ruler->Caption = sTmp; }

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

void __fastcall TMainForm::SetEditRect(void)

{TRect Rct = Rect(GutterWid, 0, RichEdit1->ClientWidth-GutterWid, ClientHeight);

SendMessage(RichEdit1->Handle, EM_SETRECT, 0, (long)&Rct); }

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

void __fastcall TMainForm::ShowHint(TObject* /*Sender*/)

{StatusBar->SimpleText = Application->Hint; }

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

void __fastcall TMainForm::FileNewClick(TObject* /*Sender*/)

{CheckFileSave(); SetFileName(Reconst_SUntitled); RichEdit1->Lines->Clear();

RichEdit1->Modified = False;}

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

void __fastcall TMainForm::FileOpenClick(TObject* /*Sender*/)

{CheckFileSave(); if (OpenDialog->Execute())

{RichEdit1->Lines->LoadFromFile(OpenDialog->FileName);

SetFileName(OpenDialog->FileName); RichEdit1->SetFocus(); RichEdit1->Modified = False;

RichEdit1->ReadOnly = OpenDialog->Options.Contains(ofReadOnly); } }

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

void __fastcall TMainForm::FileSaveClick(TObject* Sender)

{ if ( !strcmp(FFileName.c_str(), Reconst_SUntitled.c_str()) ) FileSaveAsClick(Sender); else {

RichEdit1->Lines->SaveToFile(FFileName); RichEdit1->Modified = False; } }

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

void __fastcall TMainForm::FileSaveAsClick(TObject* /*Sender*/)

{ if ( SaveDialog->Execute() ) {

RichEdit1->Lines->SaveToFile(SaveDialog->FileName); SetFileName(SaveDialog->FileName);

RichEdit1->Modified = False;} }

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

void __fastcall TMainForm::FilePrintClick(TObject* /*Sender*/)

{ if ( PrintDialog->Execute() ) RichEdit1->Print( FFileName ); }

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

void __fastcall TMainForm::FileExitClick(TObject* /*Sender*/) {Close();}

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

void __fastcall TMainForm::EditUndoClick(TObject* /*Sender*/)

{if ( RichEdit1->HandleAllocated() ) SendMessage(RichEdit1->Handle, EM_UNDO, 0, 0);}

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

void __fastcall TMainForm::EditCutClick(TObject* /*Sender*/) {RichEdit1->CutToClipboard();}

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

void __fastcall TMainForm::EditCopyClick(TObject* /*Sender*/) { RichEdit1->CopyToClipboard();}

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

void __fastcall TMainForm::EditPasteClick(TObject* /*Sender*/) {RichEdit1->PasteFromClipboard();}

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

void __fastcall TMainForm::HelpContentsClick(TObject* /*Sender*/)

{Application->HelpCommand(HELP_CONTENTS, 0);}

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

void __fastcall TMainForm::HelpSearchClick(TObject* /*Sender*/)

{Application->HelpCommand(HELP_PARTIALKEY, (long) "");}

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

void __fastcall TMainForm::HelpHowToClick(TObject* /*Sender*/)

{Application->HelpCommand(HELP_HELPONHELP, 0);}

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

void __fastcall TMainForm::HelpAboutClick(TObject* /*Sender*/)

{Form2 = new TForm2(Application); Form2->ShowModal(); delete Form2;}

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

void __fastcall TMainForm::SelectFont(TObject* /*Sender*/)

{FontDialog1->Font->Assign(RichEdit1->SelAttributes);

if(FontDialog1->Execute()) CurrText()->Assign( FontDialog1->Font ); RichEdit1->SetFocus(); }

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

void __fastcall TMainForm::RulerResize(TObject* /*Sender*/)

{ RulerLine->Width = (int)Ruler->ClientWidth - (RulerLine->Left*2); }

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

void __fastcall TMainForm::FormResize(TObject* Sender) { SetEditRect(); SelectionChange(Sender); }

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

void __fastcall TMainForm::FormPaint(TObject* /*Sender*/) {SetEditRect();}

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

void __fastcall TMainForm::BoldButtonClick(TObject* /*Sender*/)

{ if(!FUpdating)

{if(BoldButton->Down) CurrText()->Style = CurrText()->Style << fsBold;

else CurrText()->Style = CurrText()->Style >> fsBold;}}

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

void __fastcall TMainForm::ItalicButtonClick(TObject* /*Sender*/)

{if(!FUpdating){ if(ItalicButton->Down) CurrText()->Style = CurrText()->Style << fsItalic; else

CurrText()->Style = CurrText()->Style >> fsItalic;}}

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

void __fastcall TMainForm::UnderlineButtonClick(TObject* /*Sender*/)

{if(!FUpdating){ if(UnderlineButton->Down)

CurrText()->Style = CurrText()->Style << fsUnderline;

else CurrText()->Style = CurrText()->Style >> fsUnderline;}}

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

void __fastcall TMainForm::FontSizeChange(TObject* /*Sender*/)

{int fontsize = atoi(FontSize->Text.c_str()); if((!FUpdating) && (fontsize)) {

if(fontsize < 1) {ShowMessage(Reconst_SNumberbetween); FontSize->Text = 1; } else if(fontsize > 1638){

ShowMessage(Reconst_SNumberbetween); FontSize->Text = 1638;}

CurrText()->Size = atoi(FontSize->Text.c_str());}}

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

void __fastcall TMainForm::AlignClick(TObject* Sender)

{if(!FUpdating){ TControl *oAliBtn = dynamic_cast<TControl*>(Sender);

RichEdit1->Paragraph->Alignment = static_cast<TAlignment>(oAliBtn->Tag);}}

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

void __fastcall TMainForm::FontNameChange(TObject* /*Sender*/)

{ TCharsetObject* ChasrsetObject;

if(!FUpdating) { int FontIndex = FontName->ItemIndex;

if((FontIndex > -1) && (FontIndex < FontName->Items->Count)) { ChasrsetObject = dynamic_cast<TCharsetObject*>(FontName->Items->Objects[FontName->ItemIndex]);

CurrText()->Charset = ChasrsetObject->Charset;

CurrText()->Name = FontName->Items->Strings[FontName->ItemIndex];

}}}

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

void __fastcall TMainForm::BulletsButtonClick(TObject* /*Sender*/)

{if(!FUpdating)

RichEdit1->Paragraph->Numbering = static_cast<TNumberingStyle>(BulletsButton->Down);}

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

void __fastcall TMainForm::FormCloseQuery(TObject* /*Sender*/, bool & CanClose)

{ try {CheckFileSave();} catch(...) {CanClose = False; }}

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

void __fastcall TMainForm::RulerItemMouseDown(TObject * Sender,

TMouseButton Button, TShiftState Shift, int X, int Y)

{TLabel *oTmpLabel = dynamic_cast<TLabel *>(Sender);

FDragOfs = oTmpLabel->Width / 2;

oTmpLabel->Left = oTmpLabel->Left+X-FDragOfs; FDragging = True;}

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

void __fastcall TMainForm::RulerItemMouseMove(TObject *Sender, TShiftState Shift, int X, int /*Y*/)

{if(FDragging) {

TLabel * oTmpLabel = dynamic_cast<TLabel *>(Sender); oTmpLabel->Left = oTmpLabel->Left+X-FDragOfs;}}

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

void __fastcall TMainForm::FirstIndMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y)

{FDragging = False; RichEdit1->Paragraph->FirstIndent = AsInt((FirstInd->Left+FDragOfs-GutterWid) / RulerAdj); LeftIndMouseUp(Sender, Button, Shift, X, Y);}

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

void __fastcall TMainForm::LeftIndMouseUp(TObject *Sender, TMouseButton /*Button*/, TShiftState /*Shift*/, int /*X*/, int /*Y*/)

{FDragging = False; RichEdit1->Paragraph->LeftIndent = AsInt((LeftInd->Left+FDragOfs-GutterWid) /

RulerAdj)-RichEdit1->Paragraph->FirstIndent; SelectionChange(Sender); }

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

void __fastcall TMainForm::RightIndMouseUp(TObject *Sender, TMouseButton /*Button*/, TShiftState /*Shift*/, int /*X*/, int /*Y*/)

{FDragging = False; RichEdit1->Paragraph->RightIndent =

AsInt((Ruler->ClientWidth-RightInd->Left+FDragOfs-2) / RulerAdj) - 2 * GutterWid; SelectionChange(Sender); }

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

void __fastcall TMainForm::FormActivate(TObject *Sender)

{Application->HelpFile = "RICHEDIT.HLP"; RichEdit1->SetFocus();}

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

void SetLocaleOverrides(char* FileName, char* LocaleOverride)

{HKEY Key; const char* LocaleOverrideKey = "Software\\Borland\\Locales";

if(RegOpenKeyEx(HKEY_CURRENT_USER,LocaleOverrideKey, 0, KEY_ALL_ACCESS, &Key)

== ERROR_SUCCESS) {if(lstrlen(LocaleOverride) == 3)

RegSetValueEx(Key, FileName, 0, REG_SZ, (const BYTE*)LocaleOverride, 4); RegCloseKey(Key);}}

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

void __fastcall TMainForm::FormDestroy(TObject *Sender)

{for(int n = 0;n < FontName->Items->Count;n++) if(FontName->Items->Objects[n])

{delete FontName->Items->Objects[n]; FontName->Items->Objects[n] = NULL;}}

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

__fastcall TCharsetObject::TCharsetObject(int FCharset): TObject() {Charset = FCharset;}

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

void __fastcall TMainForm::BitBtn1Click(TObject *Sender)

{CheckFileSave();

SetFileName(Reconst_SUntitled); RichEdit1->Lines->Clear(); RichEdit1->Modified = False;}

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

void __fastcall TMainForm::SpeedButton1Click(TObject *Sender)

{CheckFileSave();

SetFileName(Reconst_SUntitled); RichEdit1->Lines->Clear(); RichEdit1->Modified = False; }

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

5. Контрольный пример

В качестве «Тестовой площадки» для проверки работы программы будет использоваться компьютер с операционной системой Microsoft Windows XP (и выше), а также программное обеспечение Borland C++ Builder 6 - при отсутствии исполнимого файла.

Для контрольного примера работы данного типа программ будем использовать приложение WordPad, идущее в комплекте с операционной системой Microsoft Windows .

Запустим программу WordPad из меню «Пуск - Программы - Стандартные - WordPad». Создадим простой документ и произведем над ним операции форматирования, такие как переключение шрифта на жирный, наклонный или подчеркнутый, отступ первой строки, изменение размера шрифта, а также самого его типа (Рис. 10):

Рис. 10

В итоге мы имеем отформатированный текст, как пример правильной работы текстового редактора.

6. Результат работы программы

Запустим созданную программу DiamondPad. Создадим простой документ и произведем над ним те же операции форматирования, что и с контрольным примером (Рис.11):

текстовый редактор программирование форматирование

Рис.11

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

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

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

DiamondPad имеет следующие возможности форматирования текста:

· Шрифт

· Размер шрифта

· Начертание шрифта

· Жирный шрифт

· Подчёркивание

· По левому краю

· По центру

· По правому краю

· Маркировка

· Вставка из буфера обмена

9. Список литературы

1. Понамарев В.И. Программирование на C++/C# в Visual Studio .NET 2003 БХВ-Петербург. 2004.

2. Давыдов В.Г. Технологии программирования C++ БХВ-Петербург. 2005.

3. Дж. Коплиен Программирование на C++. 2005.

4. Александров В.И. Создание оконных приложений в среде программирования C++ Builder 6. Аст-пресс. 2006.

5. Антонов С.Н. С++ для начинающих. Диалектика - Санкт-Петербург. 2007.

6. И.М. Ратнер. Практикум по дисциплине «Высокоуровневые методы

информатики и программирования»

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


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

  • Типы, основные функции, элементы и принцип работы текстового редактора (компьютерной программы). Методы вставки внешних объектов в текст. Особенности текстового процессора Microsoft Word, его специальные возможности. Типовая структура интерфейса.

    реферат [15,8 K], добавлен 07.12.2010

  • Настройка текстового редактора MS Word. Создание текстового документа. Создание шаблона. Форматирование сложного документа. Создание списков и колонок текста. Создание таблиц. Создание формул. Связывание и внедрение объектов. Создание макросов.

    контрольная работа [36,6 K], добавлен 10.05.2004

  • Разработка текстового редактора с подсветкой синтаксиса языков программирования. Загрузка из XML-файла настроек для подсветки синтаксиса и конструкций языка. Формат файлов конфигурации и проверки. Разбор текста и применение к нему стилей, тестовый пример.

    курсовая работа [141,6 K], добавлен 13.03.2013

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

    контрольная работа [407,5 K], добавлен 12.10.2015

  • Составление Win32 App проекта - простейшего текстового редактора, который позволяет выполнять такие операции: редактирование текста, копирование и вставку из одного окна проекта в другое окно проекта. Методы вызова диалогов сохранения и открытия файла.

    курсовая работа [716,3 K], добавлен 09.11.2010

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

    контрольная работа [24,1 K], добавлен 03.02.2012

  • Функции текстового редактора как программы для работы с текстом. Использование редактора MS Word в научной деятельности исследователя-ономаста. Технология распознавания текста и организация работы с программой FineReader. Системы распознавания речи.

    реферат [979,3 K], добавлен 16.10.2013

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

    дипломная работа [2,8 M], добавлен 21.07.2013

  • Решение задачи с помощью программы MS. Использование интерфейса для работы с электронной таблицей. Разработка и создание базы данных для хранения и обработки информации. Оформление пояснительной записки с помощью текстового редактора Microsoft Word.

    курсовая работа [2,7 M], добавлен 13.01.2015

  • Порядок створення нового документа в текстовому редакторі. Виділення окремих елементів документу( слова, рядка, тощо). Використання програми Блокнот. Переваги редактора Google Documents. Значення та можливості створення документів та текстових редакторів.

    презентация [434,9 K], добавлен 17.05.2019

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