Разработка программы форматирования текстовых файлов

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    32,54 Кб
  • Опубликовано:
    2012-07-24
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Разработка программы форматирования текстовых файлов

"Разработка программы форматирования текстовых файлов"

Содержание

Введение

. Исследование предметной области

.1 Описание предметной области

.2 Основные функциональные возможности и требования к программе

. Архитектура ПО

.1 Концептуальная модель программы

.2 Разбиение программы на модули

. Реализация ПС

.1 Выбор технологии разработки

.2 Пользовательский интерфейс приложения

. Анализ качества разработанного ПО

.1 Тестирование программного продукта

.2 Оценка качества программного продукта

Заключение

Библиографический список

Приложение

Введение

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

Цель работы

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

В разработке участвовали студенты ХГУ гр. 10

Казаковцев Н. М.

-   Малмыгина О. В.

Структура и объём работы

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

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

Программная реализация алгоритмов. Выбор среды исполнения, среды программирования и компонентов, подлежащих использованию. Разрабатывается структура программного средства.

Тестирование и отладка. Разработка плана тестирования. Проведение детерминированного тестирования процедур и общего стохастического тестирования программного средства. Определение качественных характеристик разработанной программы.

 

1. Исследование предметной области


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

 

.1 Описание предметной области


Предметной областью в рамках данной задачи является процесс форматирования текстового файла. Сам процесс форматирования содержит решение таких задач как:

       определение фала с исходным текстом;

-        выбор параметров форматирования текста;

         проверка корректности полученных данных;

         форматирование файла;

         запись результата;

         просмотр результата.

 

.2 Основные функциональные возможности и требования к программе


Исходя из вышеописанной предметной области можно выделить функциональные возможности будущего программного средства:

Функциональные возможности:

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

-        визуальное задание параметров форматирования;

         выбор стандарта завершения строк;

         выравнивание строк по ширине;

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

Требования:

       при создании пользовательского интерфейса и программировании операции ввода/вывода использование исключительно средств предоставляемых операционной системой;

-        использование по возможности меньшего объёма системных ресурсов.

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

Разработанный программный продукт имеет следующую логику работы:

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

 

2. Архитектура ПО

 

.1 Концептуальная модель программы


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

Как было указано выше - это возможность форматирования текстовых фалов.

Концептуальная модель программы представлена в виде диаграммы вариантов использования на рис. 1.

Рис. 1

2.2 Разбиение программы на модули


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

Разрабатываемое программное средство не имеет связей с базами данными и не хранит настроек.

 

3. Реализация ПС

 

.1 Выбор технологии разработки


При разработке программного продукта было принято решение использовать среду разработки Microsoft Visual Studio С++ 6.0. Использование языка С++ было вызвано тем, что при разработке было использовано множество функций WinAPI, а поскольку большая часть операционной системы Windows написана именно с использованием этого языка, то его использование является наиболее целесообразным, поскольку это упрощает объявление типов параметров и структур, используемых при вызове функций операционной системы. Следовательно, вопрос с выбором языка программирования в рамках поставленной задачи отпадает, поскольку при использовании других языков программирования, например ObjectPascal, потребуется использовать типы переменных введённые данный язык с целью поддержки работы с WinAPI и как следствие при этом придётся мириться со снижением быстродействия программы, вызванного преобразованием типов переменных. Использование же именно среды разработки фирмы Microsoft объясняется тем, что данная среда поставляется разработчиком операционной системы и, следовательно, она сразу может быть причислена к лучшим решениям подобного рода. Кроме того данная среда программирования имеет справку основанную на одной из лучших справочных систем по WinAPI программированию - MSDN.

Наиболее достойным по функциональным возможностям в сравнении с выбранной средой разработки выглядит Borland C++ Builder, но, однако он имеет существенный недостаток - при использовании его в качестве средства разработки вместе с программным модулем придётся поставлять фирменную библиотеку (в виде.dll), размер которой в 160 раз превышает размер исполняемого модуль. Это является неприемлемым для небольшого проекта и поэтому выбор был сделан в пользу Microsoft Visual Studio С++ 6.0.

3.2 Пользовательский интерфейс приложения


Разработанный продукт имеет следующую логику работы:

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

Рис. 2. Главное окно программы

. После этого пользователю с помощью главного меню программы необходимо выбрать исходный файл. Для выбора файла используется стандартный диалог операционной системы Windows.

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

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

Рис. 3. Диалог выбора параметров форматирования

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

Рис. 4. Диалог начала форматирования текста

. Работа с программой завершается её закрытием.

 

4. Анализ качества разработанного ПО

 

.1 Тестирование программного продукта


Для анализа качества разработанного ПО необходимо провести тестирование. В данном случае использовался метод тестирования в реальном масштабе времени.

Наименование объекта испытаний - программное средство «txt Formater».

Цель испытаний - выявление как можно большего числа ошибок;

Для испытания ПС выбран стохастический метод тестирования.

Назначение тестирования - создание полнофункционального и эффективного программного средства.

Тестирование в реальном масштабе времени осуществляется в виде работы с разработанным программным изделием со стороны пользователя.

 

.2 Оценка качества программного продукта

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

По результатам испытания была проведена оценка качества ПС. Оценка качества приведена в табл. 1.

Как видно из табл. 1, программа показывает хорошее качество, что говорит о законченности реализации программы.

Табл. 1. Результаты стохастического тестирования

Сценарий

Результат

1

Запуск приложения

Ошибок не обнаружено

2

Открытие исходного файла

Ошибок не обнаружено

3

Выбор целевого файла

Ошибок не обнаружено

4

Выбор параметров форматирования

Ошибка при интерпретации параметров форматирования. Ошибка исправлена.

5

Форматирование

Обнаружена ошибка зависания программы если не были выбраны рабочие файлы. Ошибка исправлена.

6

Предварительный просмотр

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

7

Закрытие приложения

Завершение приложения в единичных случаях сопровождается сообщением о недопустимой операции. Ошибка не локализована, её появление не наносит вреда системе и данным.


На основании тестирования и общей оценки качества разработанного ПС была составлена следующая таблица оценки качества (табл. 2):

Табл. 2 Оценка качества ПС

Наименование групп и комплексных показателей качества

Оценка

1

Показатели надежности ПС


1.1.

Устойчивость функционирования

+

1.2.

Работоспособность

+

2

Показатели сопровождения


2.1.

Структурность

-

2.2.

Простота конструкции

+

2.3.

Наглядность

-

2.4.

Повторяемость

-

3

Показателя удобства применения


3.1.

Легкость освоения

+

3.2.

Доступность эксплуатационных программных документов

-

Удобство эксплуатации и обслуживания

-

4

Показатели эффективности


4.1.

Уровень автоматизации

+

4.2.

Временная эффективность

+

4.3.

Ресурсоемкость

+

5

Показатели универсальности


5.1.

Гибкость

+

5.2.

Мобильность

-

5.3.

Модифицируемость

+

6

Показатели корректности


6.1.

Полнота реализации

-

6.2.

Согласованность

-

6.3.

Логическая корректность

+

6.4.

Проверенность

+

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

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

 

Заключение


. Результатом данной работы является разработанное приложение «txt Formater». Разработанный продукт является полностью функциональным (все необходимые функции в нем реализованы). Несмотря на это, допускается его дальнейшая модернизация как в плане интерфейса, так и в плане функциональных возможностей.

. При разработке программы были использованы современные методологии и технологии, позволяющие в сжатые сроки получить качественный продукт. Программа реализована с помощью среды программирования Microsoft Visual Studio С++ 6.0.

 

Библиографический список

 

1.   MSDN.

2.      Глушаков С.В., Коваль А.В., Смирнов С.В. Язык программирования С++: Учебный курс. - Харьков: Фолио; М.: ООО "Издательство АСТ", 2001. - 500 с.

.        Петзолд. Ч. Программирование для Windows 95 в двух томах. «BHV - Санкт-Петербург» С. 242.

.        Шкарина Л.Н. Методические рекомендации по выполнению научно-исследовательских работ для студентов информационных специальностей университета. // Вестник Хакасского государственного университета им. Н.Ф. Катанова. Выпуск 4. Серия 1: Информатика. - Абакан; Издательство Хакасского государственного университета им. Н.Ф. Катанова, 2000. - С. 232-235.

Приложение

 

main.cpp

#include <windows.h>

#include <stdio.h>

#include <time.h>

#include <string.h>

#include "resource.h"CALLBACK WindowFunc(HWND, UINT, WPARAM, LPARAM);CALLBACK Dlg1Func (HWND Dlg1, UINT message, WPARAM wParam, LPARAM lParam);CALLBACK Dlg2Func (HWND Dlg2, UINT message, WPARAM wParam, LPARAM lParam);CALLBACK DlgAFunc (HWND DlgA, UINT message, WPARAM wParam, LPARAM lParam);ofn;buf[260]="";long fs=0;buf1[260]="";ext[]="txt";

char szWinName[] = "Lab4";hdc;

bool doit=false;Turn;hInst;hwnd,Dlg1,Dlg2,DlgA;* result;number;aa;hfile,hfile1,hfile2;mem,mem1;txtctrl;con=75,aftcon,sp,nd=1,alg=1;sfile[],rfile[],tfile[];cppbs[2048]=" ";spase[2]=" ";WINAPI WinMain(HINSTANCE hThisInst, HINSTANCE hPrevInstance, LPSTR lpszArgs, int nWinMode)

{msg;wcl;.hInstance=hThisInst;.lpszClassName=szWinName;.lpfnWndProc=WindowFunc;.style=0;.hIcon=LoadIcon(NULL, IDI_APPLICATION);.hCursor=LoadCursor(NULL, IDC_ARROW);.lpszMenuName=(LPCTSTR)IDR_MENU1;.cbClsExtra=0;.cbWndExtra=0;.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);(!RegisterClass(&wcl)) return 0;((unsigned)time(NULL));=CreateWindow(szWinName, "txt Formater",_SYSMENU,_USEDEFAULT,_USEDEFAULT,

,

,_DESKTOP,,,);(hwnd, nWinMode);(hwnd);(GetMessage(&msg, NULL, 0, 0))

{(&msg);(&msg);

}msg.wParam;

}CALLBACK WindowFunc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)

{(message)

{WM_MOUSEMOVE:;WM_DESTROY:(0);

break;

//обрабатываем команды от главного меню

case WM_COMMAND:(wParam) {

//отображаем диалоговое окно форматированияID_MENUITEM40002:

{=CreateDialog(NULL,(LPCTSTR) IDD_Format, hwnd, Dlg1Func);(Dlg1,SW_SHOW);

};ID_MENUITEM40004:

{=CreateDialog(NULL,(LPCTSTR) IDD_DIALOG1, hwnd, DlgAFunc);(DlgA,SW_SHOW);

{=CreateDialog(NULL,(LPCTSTR) IDD_F, hwnd, Dlg2Func);(Dlg2,SW_SHOW);

};

//обрабатываем закрытие приложение через команду менюIDCLOSE:

{(0);

};

//обрабатываем открытие файла пользователемIDFILEOPEN:{

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

//заполняем поля структуры, описывающей открываемый файл

ofn.lStructSize=sizeof(OPENFILENAME);.hwndOwner=hwnd;.lpstrFile=buf;.nMaxFile=260;.Flags=OFN_FILEMUSTEXIST;.lpstrDefExt=ext;(!GetOpenFileName(&ofn)) ExitProcess(76);

//открываем файл=CreateFile(buf,GENERIC_READ,0,0,OPEN_EXISTING,0,0);

//создаём область памяти для того чтобы в неё можно было считать файл

mem=VirtualAlloc(0,GetFileSize(hfile,0),MEM_COMMIT,PAGE_READWRITE);

//считываем файл в созданную область памяти

ReadFile(hfile,mem,GetFileSize(hfile,0),&aa,0);

((BYTE*)mem)[GetFileSize(hfile,0)]=0;

//закрываем файл

CloseHandle(hfile);

//выводим содержимое файла в EDIT(txtctrl,(LPCSTR)mem);

//освобождаем область памяти(mem,0,MEM_RELEASE);

//устанавливаем фокус ввода на окно редактирования(txtctrl);

//открываем диалог сохранения файла

ofn.lStructSize=sizeof(OPENFILENAME);.hwndOwner=hwnd;.lpstrFile=buf1; ofn.nMaxFile=260;.Flags=OFN_NOREADONLYRETURN;.lpstrDefExt=ext;(!GetSaveFileName(&ofn)) ExitProcess(76);

//выкидываем пользователю окно диалога(hwnd,WM_COMMAND,ID_MENUITEM40002,0); //и в завершении окно диалога начала форматирования

//MessageBox(NULL,"Задайте параметры форматирования текста и оцените результат в окне предварительного просмотра","Error",MB_OK);

};

}WM_SIZE:(txtctrl,0,0,495,456,1);;WM_SETFOCUS:(txtctrl);;WM_CREATE:=CreateWindowEx(WS_EX_CLIENTEDGE,"EDIT","",WS_CHILD+WS_VISIBLE+WS_VSCROLL+WS_HSCROLL+ES_AUTOHSCROLL+ES_AUTOVSCROLL+ES_MULTILINE+ES_WANTRETURN,0,0,0,0,hwnd,0,NULL,0);(!txtctrl) PostQuitMessage(0);;WM_RBUTTONDOWN:(doit==0)

{

}0;;:DefWindowProc(hwnd, message, wParam, lParam);

}0;

}

//функция обрабатывающая сообщения окна диалога

BOOL CALLBACK Dlg1Func (HWND Dlg1, UINT message, WPARAM wParam, LPARAM lParam)

{ HWND Edt;(message)

{WM_INITDIALOG:

//устанавливаем параметры диалога "по умолчанию"(Dlg1,IDC_EDIT1,"75");(Dlg1,IDC_EDIT2,"0");;WM_DESTROY:WM_CLOSE:(Dlg1);=NULL;;WM_COMMAND:(LOWORD(wParam)==IDOK)

{char te[4];

//получаем указатель на поле ввода диалогового окна

Edt=GetDlgItem(Dlg1,IDC_EDIT1);

//получаем то что введено в поле ввода в виде текста(Edt,te,3);

//преобразуем текст в число=atoi(te);

//получаем число пробелов в начале строки

Edt=GetDlgItem(Dlg1,IDC_EDIT2);

GetWindowText(Edt,te,3);=atoi(te);

if (aftcon>0) {(int d=1; d<aftcon; d++)

{strcat(cppbs," ");}}

//выравнивать ли текст по ширине

Edt=GetDlgItem(Dlg1,IDC_CHECK1);(SendMessage(Edt,BM_GETCHECK,0,0)){alg=1;}else{alg=0;}

//получаем значения элементов управления=GetDlgItem(Dlg1,IDC_CHECK2);

if (SendMessage(Edt,BM_GETCHECK,0,0)){sp=1;}else{sp=0;}

//слева

//12=GetDlgItem(Dlg1,IDC_RADIO2);(SendMessage(Edt,BM_GETCHECK,0,0)){nd=0;}

//12/13=GetDlgItem(Dlg1,IDC_RADIO3);(SendMessage(Edt,BM_GETCHECK,0,0)){nd=1;}

//закрываем диалоговое окно=CreateDialog(NULL,(LPCTSTR) IDD_F, hwnd, Dlg2Func);(Dlg2,SW_SHOW);(Dlg1,0);

};;

}FALSE;

}

//собственно функция выполняющая форматирование

BOOL CALLBACK Dlg2Func (HWND Dlg2, UINT message, WPARAM wParam, LPARAM lParam)

{hu[]="";s[2048]="",stt[2048]=" ",sttt[2048]=" ",re[2048]="";

char ns=13;nsp='/n/r';ns1=10;

char caches[2048];empc[]="";dspase[3]=" ";qwe[]="";rf,fe,sf,wf,st,sv;t[1];long fs=0;long fss=0;long ti=1,to=1;i=0,j=0;(message)

{WM_DESTROY:WM_CLOSE:(Dlg2);=NULL;;

case WM_COMMAND:

//отрабатываем нажатие кнопки оК(LOWORD(wParam)==IDOK)

{ //открываем исходный файл для чтения(s,cppbs);(strlen(buf)<2 || strlen(buf1)<2){MessageBox(NULL,"Прежде чем начинать форматировать нужно определиться с тем, что мы будем форматировать.","Error",MB_OK); EndDialog(Dlg2,0);goto w1;}

//открываем файл с исходным текстом.lStructSize=sizeof(OPENFILENAME);

ofn.hwndOwner=hwnd;.lpstrFile=buf;.nMaxFile=260;.Flags=OFN_FILEMUSTEXIST;.lpstrDefExt=ext;=CreateFile(buf,GENERIC_READ,0,0,OPEN_EXISTING,0,0);//запоминаем указатель на него

//создаём файл в который будем записывать результаты форматирования

ofn.lStructSize=sizeof(OPENFILENAME);.hwndOwner=hwnd;.lpstrFile=buf1; ofn.nMaxFile=260;.Flags=OFN_NOREADONLYRETURN;.lpstrDefExt=ext;

/*открываем только для записи (читать из него нам точно ничего не понадобится),

hfile1=CreateFile(buf1,GENERIC_WRITE,0,0,CREATE_ALWAYS,0,0);//запоминаем указатель на него=true;=GetFileSize(hfile,&fss);(qwe,"%i",fs);(txtctrl,qwe);

//в цикле читаем файл и занимеемся форматированием строчек

while(rf)

{=ReadFile(hfile,&t,to,&ti,NULL);

//st=false;(ti!=0){i++;}//в случае если, что-то прочитали, то увеличиваем счётчик на единицу((fs)==i) {rf=0;}//проверяем не хватит ли нам читать

if (t[0]==13){strcpy(t,hu);}(t[0]!=32 && t[0]!=10){strcat(caches,t);}

if (t[0]==32)//если прочитанный символ - пробел

{strcat(caches,t);(strlen(s)+strlen(caches)+strlen(re)<con){(s,re);(re,hu);(re,caches);(caches,hu);//очищаем кеш

}{ l1:((strlen(s)+strlen(re)<con) && (alg))

{(stt,re);(re,stt);(stt,sttt);l1;

}(s,re);(hfile1,&s,strlen(s),&ti,NULL);(nd) {WriteFile(hfile1,&ns,1,&ti,NULL);}// записываем символ перевода строки

WriteFile(hfile1,&ns1,1,&ti,NULL);//записываем символ конца строки

strcpy(s,cppbs);(re,caches);

strcpy(caches,hu);

}

}(t[0]==10) {//если прочитанный символ конец сроки

strcat(s,caches);(s,re);(caches,hu);(re,hu);

char kl[2048]=" ";(sp) {strcat(s,kl);}//если необходимо добавляем пробел в конце истинного абзаца текста

WriteFile(hfile1,&s,strlen(s),&ti,NULL);

{WriteFile(hfile1,&ns,1,&ti,NULL);}(hfile1,&ns1,1,&ti,NULL);(s,cppbs);

}

}(hfile);(hfile1);=CreateFile(buf1,GENERIC_READ,0,0,OPEN_EXISTING,0,0);=VirtualAlloc(0,GetFileSize(hfile1,0),MEM_COMMIT,PAGE_READWRITE);(hfile1,mem1,GetFileSize(hfile1,0),&aa,0);

((BYTE*)mem1)[GetFileSize(hfile1,0)]=0;(hfile1);

//выводим содержимое файла в EDIT(txtctrl,(LPCSTR)mem1);(mem1,0,MEM_RELEASE);(Dlg2,0);(txtctrl);

}:{;}

}FALSE;

}CALLBACK DlgAFunc (HWND DlgA, UINT message, WPARAM wParam, LPARAM lParam)

{(message)

{WM_DESTROY:WM_CLOSE:(DlgA);=NULL;;

}FALSE;

}

resource.h

#define DLG1 101

#define DLG2 102

#define IDR_MENU1 103

#define IDD_Format 104

#define IDD_F 105

#define IDD_DIALOG1 106

#define IDB_BITMAP1 107

#define IDC_EDIT1 1002

#define IDC_RADIO2 1005

#define IDC_RADIO3 1006

#define IDC_CHECK2 1007

#define IDC_EDIT2 1008

#define IDC_CHECK1 1018

#define IDFILEOPEN 40001

#define ID_MENUITEM40002 40002

#define ID_MENUITEM40003 40003

#define ID_MENUITEM40004 40004

#ifdef APSTUDIO_INVOKED

#ifndef APSTUDIO_READONLY_SYMBOLS

#define _APS_NEXT_RESOURCE_VALUE 108

#define _APS_NEXT_COMMAND_VALUE 40005

#define _APS_NEXT_CONTROL_VALUE 1019

#define _APS_NEXT_SYMED_VALUE 101

#endif

#endif

Res.rc

IDD_Format DIALOG DISCARDABLE 0, 0, 182, 124DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU "Параметры форматирования текста"

FONT 8, "MS Sans Serif"

BEGIN

DEFPUSHBUTTON "OK",IDOK,118,100,50,14

LTEXT "Количество символов в строке",IDC_STATIC,7,15,107,8

EDITTEXT IDC_EDIT1,117,12,55,14,ES_AUTOHSCROLL | ES_NUMBER"Разрыв строки",IDC_STATIC,7,74,161,22"10",IDC_RADIO2,"Button",BS_AUTORADIOBUTTON,13,83,24,10"13/10",IDC_RADIO3,"Button",BS_AUTORADIOBUTTON,50,84,35,10"Завершать абзац пробелом",IDC_CHECK2,"Button",_AUTOCHECKBOX | WS_TABSTOP,7,58,111,10 "Добавлять пробелов перед стрококой",IDC_STATIC,7,30,132,8

EDITTEXT IDC_EDIT2,142,28,32,13,ES_AUTOHSCROLL | ES_NUMBER "Выравнивать строки текста по ширине", IDC_CHECK1,"Button",

BS_AUTOCHECKBOX | WS_TABSTOP,8,45,149,10_F DIALOG DISCARDABLE 0, 0, 186, 44DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU"Форматирование"8, "MS Sans Serif" "Начать форматирование",IDOK,7,23,172,14

LTEXT "Для начала форматирования нажмите кнопку", IDC_STATIC,14,

13,158,8_DIALOG1 DIALOG DISCARDABLE 0, 0, 235, 52DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU"О программе"8, "MS Sans Serif" "Полностью учебная программа - за любой нанесённый ущерб мы ответственности не несём. Распространение свободное. Казаковцев Н.М. Малмыгина О.В. Хакасский Государственный Университет. Группа 10-1. 2004 г.",_STATIC,7,7,221,38_MENU1 MENU DISCARDABLE"Файл""Открыть текстовый файл", IDFILEOPEN"Закрыть", IDCLOSE"Форматирование""Параметры форматирования", ID_MENUITEM40002"Начать форматирование", ID_MENUITEM40003"О программе""?", ID_MENUITEM40004

END

Похожие работы на - Разработка программы форматирования текстовых файлов

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!