Разработка приложения "Текстовый редактор" в графической среде Borland Delphi7

Сущность объектно-ориентированного программирования. Основные элементы программного модуля Borland Delphi7. Характеристика записи как совокупности компонент различных типов. Разработка визуального интерфейса пользователя на основе экранных форм.

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

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

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

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

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

Введение

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

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

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

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

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

Объектом исследования является графическая среда Borland Delphi7. Предметом исследования - приложение «Текстовый редактор».

Цель исследования - разработка приложения «Текстовый редактор».

Задачи:

1. Изучить объекты графической среды Delphi7;

2. Разработать форму приложения «Текстовый редактор»;

3. Создать панель с кнопками «Сохранить», «Закрыть», «Открыть», «Печать»;

4. Создать собственный компонент программиста.

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

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

Одним из важнейших принципов объектно-ориентированного программирования является то, что программист во время разработки программы должен думать о коде и о данных совместно. Ни код, ни данные не существуют в вакууме. Данные управляют потоком кода, а код манипулирует образами и значениями данных. Если ваши код и данные являются разделенными элементами, то всегда существует опасность вызова правильной процедуры с неверными данными или ошибочной процедуры с правильными данными. Забота о совпадении этих элементов возлагается на программиста. Объект осуществляет синхронизацию кода и данных путем совместного построения их описаний. Реально, чтобы получить значение одного из полей объекта, вы вызываете относящийся к этому объекту метод, который возвращает значение нужного поля. Чтобы присвоить полю значение, вы вызываете метод, который назначает данному полю новое значение.

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

Основные файлы проекта можно разделить на несколько типов: Файлы описания форм - текстовые файлы с расширением DFM, описывающие формы с компонентами. В этих файлах запоминаются начальные значения свойств, установленные вами в окне свойств. Файлы программных модулей - текстовые файлы с расширением PAS, содержащие исходные программные коды на языке Delphi. В этих файлах вы пишите методы обработки событий, генерируемых формами и компонентами.

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

Главный модуль приложения полностью формируется Delphi. Главный модуль представляет собой файл с расширением dpr. Для того чтобы увидеть текст главного модуля приложения, нужно из меню Project выбрать команду View Source. Каждой форме в проекте соответствует свой программный модуль (unit), содержащий все относящиеся к форме объявления и методы обработки событий, написанные на языке Delphi.

Программные модули размещаются в отдельных файлах с расширением PAS. Их количество может превышать количество форм. Почему? Потому, что в ряде случаев программные модули могут и не относиться к формам, а содержать вспомогательные процедуры, функции, классы и прочее. Ни в коем случае не изменяйте имя вручную. Среда Delphi требует, чтобы имя модуля совпадало с именем файла, поэтому если вы хотите переименовать модуль, сохраните его в файле с новым именем, воспользовавшись командой меню File J Save As.

Среда Delphi сама подставит после слова unit новое имя. После этого удалите старый модуль. Содержание интерфейсной секции модуля (interface) начинается с подключения стандартных модулей библиотеки VCL, в которых определены часто вызываемые подпрограммы и классы помещенных на форму компонентов. Среда Delphi формирует список модулей без вашего участия и автоматически пополняет его, когда вы добавляете на форму новые компоненты. Тем не менее, список подключенных модулей можно изменять прямо в редакторе кода (вручную). Начинается модуль словом unit, за которым следует имя модуля. Модуль состоит из следующих разделов:

- интерфейса;

- реализации;

- инициализации.

Раздел интерфейса (начинается словом interface) сообщает компилятору, какая часть модуля является доступной для других модулей программы. В этом разделе перечислены (после слова uses) библиотечные модули, используемые данным модулем. Также здесь находится сформированное Delphi описание формы, которое следует за словом type.

Раздел реализации открывается словом implementation и содержит объявления локальных переменных, процедур и функций, поддерживающих работу формы. Начинается раздел реализации директивой {$R *.DFM}, указывающей компилятору, что в процессе генерации выполняемого файла надо использовать описание формы. Описание формы находится в файле с расширением dfm, имя которого совпадает с именем модуля. Файл описания формы генерируется средой Delphi на основе внешнего вида формы.

За директивой (SR *.DFM} следуют процедуры обработки событий для формы и ее компонентов. Сюда же программист может поместить другие процедуры и функции.

Раздел инициализации позволяет выполнить инициализацию переменных модуля. Инструкции раздела инициализации располагаются после раздела реализации (описания всех процедур и функций) между begin и end. Если раздел инициализации не содержит инструкций (как в приведенном примере), то слово begin не указывается.

Следует отметить, что значительное количество инструкций модуля формирует Delphi. Delphi, анализируя действия программиста по созданию формы, генерирует описание класса формы (после слова type). Для того чтобы компилятор знал, какие конкретно файлы входят в проект, необходимо какое-то организующее начало. И оно действительно есть. Это так называемый файл проекта, имеющий расширение DPR (сокр. от Delphi Project). Он представляет собой главный программный файл на языке Delphi, который подключает с помощью оператора uses все файлы модулей, входящих в проект. Для каждого проекта существует только один DPR-файл. Когда мы по команде File | New | Application начинаем разработку нового приложения, среда Delphi автоматически создает файл проекта. По мере создания новых форм содержимое этого файла видоизменяется автоматически. После окончания работы в DPR- файле будет находиться перечень программных модулей, которые будут поданы на вход компилятору.

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

Тип STRING (строка) в «Borland Delphi» широко используется для обработки текстов. Он во многом похож на одномерный массив символов ARRAY [0..N] OF CHAR, однако, в отличие от последнего, количество символов в строке-переменной может меняться от 0 до N, где N - максимальное количество символов в строке.

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

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

«Borland Delphi» может использовать объекты, содержащее множество однотипных элементов, которые называются массивами. Массив - это формальное обледенение нескольких однотипных объектов (чисел, символов, строк и т.п.), рассматриваемое как единое целое. Для хранения содержимого типизированного файла и обработки удобно использовать массивы с элементами типа запись. Удобство массивов заключается в том, что можно обращаться к отдельному элементу массива по номеру. Дополнительное удобство привносят динамические массивы, отличительной особенностью которых является возможность динамического изменения размерности массива, то есть динамическое выделение или освобождение памяти под требуемое в данный момент количество элементов массива.

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

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

Разработка обработчиков событий от элементов экранных форм, разработка алгоритмов и программных кодов действий обработки текстового файла согласно заданию.

Подготовка тестовых исходных данных и отладка программы.

На первом этапе целесообразно выполнить разработку интерфейса таким образом, чтобы в начале пользователь вводил текст, или мог открыть уже существующий, а затем мог приступить к редактированию. Должны быть размещены на форме кнопки: Сохранить, Закрыть, Открыть, Печать.

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

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

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

При запуске Delphi можно увидеть окна: 1) главное окно, 2) окно Дерева объектов (Object Tree View), 3) окно Инспектора объектов, 4) окно формы, 5) окно кода программы.

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

Рисунок 1 - Главное окно управления проектов Delphi

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

Рисунок 2 - Окно дерева объектов

Окно инспектора объектов содержит две страницы - Properties (Свойства) и Events (События), Страница properties служит для установки нужных свойств компонента, страница Events позволяет определить реакцию компонента на то или иное событие. Совокупность свойств отображает видимую сторону компонента.

Рисунок 3 - Окно инспектора объектов

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

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

2. Описание среды программирования Borland Delphi

2.1 Основные компоненты, их назначение и свойства

Delphi - это комбинация нескольких важнейших технологий:

- Высокопроизводительный компилятор в машинный код.

- Объектно-ориентированная модель компонент.

- Визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов.

- Масштабируемые средства для построения баз данных.

Уже само название концепции "объектно-ориентированное программирование" указывает на то, что ключевой фигурой в ООП является объект. Объекты - это крупнейшее достижение в современной технологии программирования. Они позволили строить программу не из чудовищных по сложности процедур и функций, а из кирпичиков-объектов, заранее наделённых нужными свойствами. Самое приятное в объектах это то, что их внутренняя сложность скрыта от программиста, который просто пользуется готовым строительным материалом.

Все присущие объекту характеристики в терминах ООП называют полями. По сути, это принадлежащие объекту переменные определённого типа, в которые записываются значения, отражающие состояние объекта. Для управления объектом предназначены его методы. В первую очередь методы воздействуют на поля объекта. Если методы объекта возвращают какое-нибудь значение, то они реализуются в виде функций, в противном случае метод представляется процедурой.

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

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

Пример:

type TPeople = class

Name: string;

Family: string;

procedure GetName;

procedure GetFamily;

end;

Класс содержит поля (Name, Family) и методы (GetName, GetFamily). Заголовки методов, всегда следующие за списком полей, играют роль упреждающих описаний. Программный код методов пишется отдельно от определения класса.

Чтобы от описания класса перейти к объекту, следует выполнить следующее объявление в секции var:

var People: TPeople;

При работе с обычными типами данных этого объявления было бы достаточно для получения экземпляра типа. Однако объекты среды Delphi являются динамическими данными, то есть распределяются в динамической памяти. Поэтому переменная People - это просто ссылка на экземпляр (объект в памяти), которого физически ещё не существует. Чтобы сконструировать объект (выделить память для экземпляра) класса TPeople и связать с ним переменную People, нужно в тексте программы поместить следующий оператор:

People := TPeople.Create; //Выделение памяти под объект.

Create - это так называемый конструктор объекта; он всегда присутствует в классе и служит для создания и инициализации экземпляров. При создании объекта в памяти выделяется место только для его полей. Методы, как и обычные процедуры и функции, помещаются в область кода программы; они умеют работать с любыми экземплярами своего класса и не дублируются в памяти. После создания объект можно использовать в программе: получать и устанавливать значения его полей, вызывать его методы. Доступ к полям и методам объекта происходит с помощью уточнённых имён. Кроме того, как и при работе с записями, допустимо использование оператора with.

Если объект становится ненужным, он должен быть удалён вызова специального метода Destroy - это так называемый деструктор объекта; он присутствует в классе наряду с конструктором и служит для удаления объекта из динамической памяти.

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

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

Инкапсуляция (encapsulation) - это механизм, который объединяет данные и код, манипулирующий этими данными, а также защищает и то, и другое от внешнего вмешательства или неправильного использования. В объектно-ориентированном программировании код и данные могут быть объединены вместе; в этом случае говорят, что создаётся так называемый "чёрный ящик". Когда коды и данные объединяются таким способом, создаётся объект (object).

Другими словами, объект - это то, что поддерживает инкапсуляцию.

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

Наследование (inheritance) - это процесс, посредством которого один объект может приобретать свойства другого. Точнее, объект может наследовать основные свойства другого объекта и добавлять к ним черты, характерные только для него. Наследование является важным, поскольку оно позволяет поддерживать концепцию иерархии классов (hierarchical classification). Применение иерархии классов делает управляемыми большие потоки информации.

2.2 Методы, применяемые к объектам

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

Пример:

procedure TPeople.GetName;

begin.

Writeln ('Введите имя человека');

Readln(People.Name);

end;

Внутри методов обращения к полям и другим методам выполняются как к обычным переменным и подпрограммам без уточнения экземпляра объекта. Такое упрощение достигается путём использования в пределах метода псевдопеременной Self (стандартный идентификатор). Этот дополнительный скрытый параметр необходим в тех случаях, когда создаётся несколько объектов одного класса, так что каждый раз, когда вы применяется метод к одному из объектов, он должен оперировать именно со своими данными и не влиять на своих объектов-"братьев". Физически Self представляет собой дополнительный неявный параметр, передаваемый в метод при вызове. Этот параметр и указывает экземпляр объекта, к которому данный метод применяется. Практика показывает, что псевдопеременная Self редко используется в явном виде. Её необходимо применять только тогда, когда при написании метода может возникнуть какая-либо двусмысленность для компилятора.

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

Существует 4 спецификатора доступа: private, protected, public и published:

Ключевое слово private определяет поля и методы класса, которые недоступны вне модуля (файла с исходным кодом), в котором определён класс.

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

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

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

Ключевое слово published устанавливает правила видимости те же, что и директива public. Особенность состоит в том, что для элементов, помещённых в секцию published, компилятор генерирует информацию о типах этих элементов. Эта информация доступна во время выполнения программы, что позволяет превращать объекты в компоненты визуальной среды разработки. Секцию published разрешено использовать только тогда, когда для самого класса или его предка включена директива компилятора STYPEINFO.

Перечисленные секции могут чередоваться в объявлении класса в произвольном порядке, однако в пределах секции сначала следует описание полей, а потом методов и свойств. Если в определении класса нет ключевых слов private, public, protected, published, то для обычных классов всем полям, методам и свойствам приписывается атрибут видимости public, а для тех классов, которые порождены от классов библиотеки VCL, - атрибут видимости published. Внутри модуля никакие ограничения на доступ к атрибутам классов, реализованных в том же модуле, не действуют.

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

Использование методов для получения и установки свойств позволяет проверить корректность значения свойства, сделать дополнительные вычисления, установить значения зависимых полей и так далее.

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

Все методы, которые до сих пор рассматривались, являются статическими.

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

Объявление виртуального метода в базовом классе выполняется с помощью ключевого слова virtual, а его перекрытие в производных классах - с помощью ключевого слова override. Перекрытый метод должен иметь точно такой же формат (список параметров, а для функций ещё и тип возвращаемого значения), что и перекрываемый. Суть виртуальных методов в том, что они вызываются по фактическому типу экземпляра, а не по формальному типу, записанному в программе. Работа виртуальных методов основана на механизме позднего связывания. В отличие от раннего связывания, характерного для статических методов, позднее связывание основано на вычислении адреса вызываемого метода при выполнении программы. Адрес метода вычисляется по хранящемуся в каждом объекте описателю класса. Благодаря механизму наследования и виртуальных методов в среде Delphi реализуется такая концепция объектно-ориентированного программирования как полиморфизм. Полиморфизм существенно облегчает труд программистов, поскольку обеспечивает повторное использование кода уже написанных и отлаженных методов.

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

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

2.3 Процедуры и функции

Простейшей и, пожалуй, наиболее часто используемой кнопкой является кнопка Button, расположенная на странице библиотеки Standard.

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

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

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

if (key='C' or key='c') then Button1.Click;

Если пользователь ввел символ «С» или «с», то в результате будет выполнен обработчик щелчка кнопки Button1.

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

csDropDown - Выпадающий список со строками одинаковой высоты и с окном редактирования, позволяющим пользователю вводить или редактировать текст;

csSimple - Развернутый список со строками одинаковой высоты и с окном редактирования, позволяющим пользователю вводить или редактировать текст;

csDropDownList - Выпадающий список со строками одинаковой высоты, не содержащий окна редактирования.

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

Если в окне проводилось редактирование данных, то ItemIndex = -1. По этому признаку можно определить, что редактирование проводилось.

Свойство MaxLength определяет максимальное число символов, которые пользователь может ввести в окно редактирования.

Если MaxLength = 0, то число вводимых символов не ограничено.

В компоненте Edit вводимый и выводимый текст содержится в свойстве Text. Это свойство можно устанавливать в процессе проектирования или задавать программно. Выравнивание текста, как это имело место в метках и панелях, невозможно. Перенос строк тоже невозможен. Текст, не помещающийся по длине в окно, просто сдвигается, и пользователь может перемещаться по нему с помощью курсора. Свойство AutoSize в окнах редактирования имеет смысл, отличный от смысла аналогичного свойства меток: автоматически подстраивается под размер текста только высота, но не ширина окна.

Окна редактирования снабжены многими функциями, свойственными большинству редакторов. Например, в них предусмотрены типичные комбинации «горячих» клавиш: Ctrl-C -- копирование выделенного текста в буфер обмена Clipboard (команда Copy), Ctrl-X -- вырезание выделенного текста в буфер Clipboard (команда Cut), Ctrl-V -- вставка текста из буфера Clipboard в позицию курсора (команда Paste), Ctrl-Z -- отмена последней команды редактирования.

Edit можно использовать и просто как компоненты отображения текста. Для этого надо установить в true его свойство ReadOnly и целесообразно установить AutoSelect в false. В этом случае пользователь не сможет изменять отображаемый текст и окно редактирования становится подобным меткам. При использовании окон редактирования для вывода, ввода и редактирования чисел необходимо использовать функции взаимного преобразования строк и чисел. Для вывода это описанные при рассмотрении меток функции FloatToStr и IntToStr. При вводе это функции StrToFloat -- преобразование строки в значение с плавающей запятой, и StrToInt -- преобразование строки в целое значение. Если вводимый текст не соответствует числу (например, содержит недопустимые символы), то функции преобразования генерируют исключение EConvertError. Поэтому в программе необходимо предусмотреть обработку этого исключения. Например:

var A: integer;

try

A := StrToInt(Edit1.Text);

...{операторы, использующие переменную А}

except on EConvertError do

ShowMessage('Вы ввели ошибочное число;

повторите ввод');

Этот код обеспечивает сообщение пользователю об ошибке ввода и предотвращает ошибочные вычисления. Впрочем, это не лучший вариант предотвратить ошибочный ввод, поскольку пользователь узнает о своей ошибке только после того, как программа пытается использовать введенные данные. Лучше, если пользователь просто не сможет ввести неправильные символы. Например, если вы хотите, чтобы пользователь мог вводить в окно редактирования Edit только цифры и символ точки, вы можете в обработчик события OnKeyPress этого компонента вставить оператор:

if not (Key in ['0'..'9', ',']) then Key := #0;

Этот оператор подменит все символы, кроме цифр и запятой, нулевым символом, который не занесется в текст окна Edit.

Свойство MaxLength определяет максимальную длину вводимого текста. Если MaxLength = 0, то длина текста не ограничена. В противном случае значение MaxLength указывает максимальное число символов, которое может ввести пользователь.

Свойство PasswordChar позволяет превращать окно редактирования в окно ввода пароля. По умолчанию значение PasswordChar равно #0 -- нулевому символу. В этом случае это обычное окно редактирования. Но если в свойстве указать иной символ (например, символ звездочки «*»), то при вводе пользователем текста в окне будут появляться именно эти символы, а не те.

3. Разработка формы приложения

3.1 Описание и содержание окон программы

На главной форме присутствует компонент Button 1. Для него установлены свойства:

Name - Имя компонента. Используется в программе для доступа к компоненту и его свойствам

Caption - Текст на кнопке

Enabled - Признак доступности кнопки. Кнопка доступна, если значение свойства равно "1 rue, и не доступна, если значение свойства равно False

Left - Расстояние от левой границы кнопки до левой границы формы

Тор - Расстояние от верхней границы кнопки до верхней границы формы

Height - Высота кнопки

Width - Ширина кнопки

Рисунок 4 - Компонент Button 1

Форма «Текстовый редактор» содержит компоненты:

ToolBar:

- HideClippedButtons - определяет обработку кнопок.

- ButtonCount - указывает количество кнопок, расположенных на панели.

- ButtonHeight - определяет высоту элементов управления, расположенных на панели.

- Buttons - содержит массив всех кнопок, имеющихся на панели.

- ButtonWidth - определяет высоту кнопок, расположенных на панели.

- Customizable - определяет возможность настройки панели пользователем.

- CustomizeKeyName - определяет имя раздела в реестре, в котором будет сохраняться информация о пользовательских настройках.

- Disabledlmages - определяет коллекцию картинок для неактивного состояния кнопок.

- Images - определяет коллекцию картинок для обычного состояния кнопок.

- Indent - определяет поле по левой стороне панели.

- List - определяет вид выравнивания картинок и текста.

- Menu - позволяет связать панель инструментов с главным меню.

- RowCount - указывает на количество строк, по которым расположены кнопки панели.

- Transparent - определяет, будет ли панель прозрачной.

- Wrapable - определяет, должны ли кнопки автоматически переноситься, если не помещаются в одну строку.

- EdgeBorders - определяет, по каким сторонам панели должны быть видны рамки.

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

Свойства NMemo:

- Name - Имя компонента.

- Text - Текст, находящийся в поле Memo.

- Lines - Текст, находящийся в поле Memo.

- Lines.Count - Количество строк текста в поле Memo.

- Left - Расстояние от левой границы поля до левой границы формы.

- Тор - Расстояние от верхней границы поля до верхней границы формы.

- Height - Высоту поля.

- Width - Ширину поля.

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

- ParentFont - Признак наследования свойств шрифта родительской формы ComboBox.

- Name - Имя компонента.

- Text - Текст, находящийся в поле ввода-редактирования.

- Items - Элементы раскрывающегося списка.

- DropDownCount - Количество отображаемых элементов в раскрытом списке.

- Lett - Расстояние от левой границы компонента до левой границы формы.

- Тор - Расстояние от верхней границы компонента до верхней границы формы.

- Font - Шрифт, используемый для отображения элементов списка.

- ParentFont - Признак наследования свойств шрифта родительской формы ToolButton.

- Action - выполняемая команда при нажатии кнопки.

- AllowAIlUp - Разрешает всем кнопкам одной группы находиться в отжатом состоянии.

- AutoSize - Включает режим автоматического подбора размеров кнопки.

- Caption - Надпись на кнопке.

- Imagelndex - Номер значка в списке Images компонента ToolBar.

- Menultem - Пункт меню, с которым ассоциирована кнопка.

- Wrap - Обеспечивает перенос последующих кнопок на новую строку.

- AutoSize - автоматический размер.

- Center - Центрирует рисунок в пределах компонента.

- IncrementalDisplay - Обеспечивает постепенное (по мере загрузки) отображение больших рисунков.

- Picture - Содержит рисунок, отображаемый в области компонента.

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

- Stretch - рисунок масштабируется так, чтобы его размеры совпадали с размерами компонента.

Рисунок 5 - Форма «Текстовый редактор» с компонентами NMemo, ToolBar, ComboBox, SpinEdit, Button

Рисунок 6 - Форма «Задание» с компонентом Label

Рисунок 7 - Вид окна

3.2 Описание модулей и процедур приложения. Название, назначение

Основной код программы содержит процедуры: Процедура подтверждения выхода из программы:

procedure TForm2.N2Click(Sender: TObject); begin

if N2.visible=true \\ если кнопки N2 активна то then

if MessageBox (Handle, 'Вы действительно хотите выйти' , 'подтверждение', MB OKCANCEL or MBICONERROR) = mrOK then Application.Terminate;

\\ выход окна с подтверждением выхода их программы

end;

Открытие файла:

procedure TForm2.ToolButton4Click(Sender: TObject);

var \\ раздел описания переменных

S: String;\\ строка

F: TextFile;\\ файл

begin

\\ Настраиваем диалог на отбор текстовых файлов:

OpenDialogl .Filter: Текстовые файлы] *.txt| Файлы Паскаля | * .pas';

\\ Выполняем диалог и анализируем его результат.

if OpenDialogl.Execute and FileExists (OpenDialogl .FileName) then

begin

\\ Открываем файл

AssignFile (F, OpenDialogl .FileName);

Reset (F); \\ для чтения

Memo 1 .Lines.Clear; // Очищаем редактор

while not EOF (F) do begin // и наполняем его

ReadLn (F, S); \\ сохранение строки S в файл F

Memo1 .Lines.Add (S) \\ поместить строку S в поле Memo

end;

end

end;

Закрыть файл:

procedure TForm2.ToolButton2Click(Sender: TObject);

begin

form2.Memol .Lines.Clear; \\ очистка

end;

Печать Файла:

procedure TForm2.ToolButton3Click(Sender: TObject);

var \\ раздел описания переменных

LSystem.TextFile; \\ файл

i:integer; \\ начальное значение

begin

if PrintDialogl.Execute then

begin

AssignPrn(f); \\ открыть для печати try

Rewrite(f); \\сохранение

For i:=0 to Memo 1 .Lines.Count-1 do

Writeln(f, Memol .Lines[i]); \\ вывод

finally

CloseFile(f); \\закрытие

end;

end;

end;

Сохранение файла:

procedure TForm2.ToolButtonlClick(Sender: TObject);

begin

if SaveDialogl .Execute then

Form2. Memol. Lines. SaveToFile(Form2. SaveDialog 1 .FileName+'.txt1); end;

Процедура изменения стиля шрифта:

procedure TForm2.ComboBoxlChange(Sender: TObject);

begin

memo 1 .Font.Name := ComboBoxl .Items [ComboBoxl .Itemlndex];

end;

Процедура изменения размера шрифта:

procedure TForm2.SpinEditlChange(Sender: TObject);

begin

if not (SpinEditl. Text = '') then memol. Font. Size := SpinEditl. Value ; end;

Процедура активации изменения стиля и размера шрифта по нажатию по форме:

procedure TForm2.ImagelC!ick{Sender: TObject);

var

1 : Integer ; begin

for I := 1 to Screen.Fonts.Count do

\\скопируйте название шрифта в комбинированный список.

ComboBoxl. Items. Add (Screen. Fonts. Strings [ 1-1] ); \\выберите текущий шрифт.

ComboBoxl. Itemlndex := ComboBoxl. Items. IndexOf (Memol.Font. Name); end;

Процедура выравнивания текста:

procedure TForm2.Button3Click(Sender: TObject);

begin

MMemo 11 .Alignment:=taLeftJustify;

end;

4. Разработка приложения в среде Borland Delphi

4.1 Описание работы приложения

Во время работы приложения могут возникать ошибки, которые называются ошибками времени выполнения. В большинстве случаев причинами являются неверные исходные данные. Созданное приложение можно запустить на выполнение в ОС Windows и из среды Delphi, при этом сообщение об одной и той же ошибке времени выполнения будет выводиться на экран в разного вида окна. Например, если одно из целых чисел ввести не как число, а как букву, или как вещественное число, то на экран будет выведено следующее окно с сообщением об ошибке и выполнение программы приостанавливается: А если программа запускается из среды Delphi с помощью встроенного отладчика, то при возникновении ошибки также появляется окно с сообщением об ошибке, и выполнение программы приостанавливается, но в этом окне помимо сообщения об ошибке указывается тип ошибки. Например, в этом окне сообщается о невозможности преобразования строки «g» в число: Чтобы продолжить работу, нажмите «ОК», затем снова Run. Окно исполняемого проекта будет свернуто, поэтому выберите его внизу экрана, в диалоговом окне ошибки снова нажмите кнопку «ОК». В данном случае будет возможность задать правильные значения переменным. При разработке проекта программист должен предусмотреть все возможные варианты некорректных действий пользователя, которые могут привести к возникновению ошибок времени выполнения, и обеспечить способы защиты от них.

4.2 Реализация приложения

Программа разработана в среде Delphi 7.0 и функционирует в ОС Windows. Embarcadero Delphi -- интегрированная среда разработки ПО для Microsoft Windows, Mac OS, iOS и Android на языке Delphi (ранее носившем название Object Pascal), созданная первоначально фирмой Borland и на данный момент принадлежащая и разрабатываемая Embarcadero Technologies. Embarcadero Delphi является частью пакета Embarcadero RAD Studio и поставляется в четырёх редакциях: Starter, Professional, Enterprise и Architect.

Windows 7 -- пользовательская операционная система семейства Windows NT, следующая по времени выхода за Windows Vista и предшествующая Windows 8. В линейке Windows NT система имеет номер версии 6.1 (Windows 2000 -- 5.0, Windows XP -- 5.1, Windows Server 2003 -- 5.2, Windows Vista и Windows Server 2008 -- 6.0). Серверной операционной системой того же семейства выступает Windows Server 2008 R2, интегрируемой операционной системой этого семейства (облегченной версией, встраиваемой в устройства) -- Windows Embedded Standard 2011 (Quebec), мобильной -- Windows Embedded Compact 2011 (Chelan, Windows CE 7.0).

5. Расчетная часть проекта

Форма текстовый редактор содержит код:

unit Unit2;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, ImgList, ComCtrls, ToolWin, StdCtrls,printers, Spin, jpeg, ExtCtrls;

type

TForm2 = class(TForm)

MainMenul: TMainMenu;

N1: TMenultem;

N2: TMenultem;

ToolBarl: TToolBar;

ToolButton1: TToolButton;

ToolButton2: TToolButton;

ToolButton3: TToolButton;

ToolButton4: TToolButton;

ImageListl: TImageList;

OpenDialogl: TOpenDialog;

SaveDialogl: TSaveDialog;

PrintDialogl: TPrintDialog;

Memol: TMemo;

ComboBoxl: TComboBox;

SpinEdit1: TSpinEdit;

Image1: TImage;

procedure N2Click(Sender: TObject);

procedure ToolButton4Click(Sender: TObject);

procedure ToolButtonl Click(Sender: TObject);

procedure ToolButton2Click(Sender: TObject);

procedure ToolButton3Click(Sender: TObject);

procedure ComboBoxlChange(Sender: TObject);

procedure SpinEditlChange(Sender: TObject);

procedure Image lCTick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

{$R*.dfm}

procedure TForm2.N2Click(Sender: TObject);

begin

if N2.visible=true thenif MessageBox (Handle, 'Вы действительно хотите выйти?1 , 'подтверждение', MBOKCANCEL or MBICONERROR) - mrOK then Application.Terminate;

end;

procedure TForm2.ToolButton4Click(Sender: TObject);

var

S: String;

F: TextFile;

begin

OpenDialogl.Filter:='Текстовые файл'*.txt| Файлы Паскаля *.pas';

if OpenDialogl.Execute and FileExists (OpenDialogl .FileName) then

begin

AssignFile (F, OpenDialogl .FileName);

Reset (F);

Memo 1 .Lines.Clear; while not EOF (F) do

begin

ReadLn (F, S);

Memol.Lines.Add (S)

end;

end

end;

procedure TForm2.ToolButtonlClick(Sender: TObject);

begin

if SaveDialogl.Execute then

Form2.Memol.Lines.Save ToFile(Form2.SaveDialogl .FileName + \txt');

end;

procedure TForm2.ToolButton2Click(Sender: TObject);

begin

form2. Memol. Lines. Clear;

end;

procedure TForm2.ToolButton3Click(Sender: TObject);

var

f: System.TextFile;

i: integer;

begin

if PrintDialogl .Execute then

begin

AssignPrn(f);

TryRewrite(f);

for i:=0 to Memol .Lines.Count-1 do Writeln(f, Memol.Lines[i]);

finally CloseFile(f);

end;

end;

end;

procedure TForm2.ComboBoxlChange(Sender: TObject);

begin

memol .Font.Name := ComboBoxl .Items [ComboBoxl .Itemlndex];

end;

procedure TForm2.SpinEditlChange(Sender: TObject);

begin

if not {SpinEditl. Text = " ) then

memol. Font. Size := SpinEditl. Value ;

end;

procedure TForm2.ImagelClick(Sender: TObject);

var

I : Integer ;

begin for I := 1 to Screen.Fonts.Count do ComboBoxl. Items. Add {Screen. Fonts. Strings [ 1-1] );

ComboBoxl. Itemlndex := ComboBoxl. Items. IndexOf (Memol.Font. Name); end;

end.

Код созданного компонента NMemo:

unit QNMemol;

interfacе

uses

SysUtils, Classes, QControls, QStdCtrls;

type

TNMemol = class(TMemo)

private

FNumb:string;

function GetNumb:string;

procedure SetNumb(value:string);

{ Private declarations }

protected

procedure KeyPress (var Key:Char);

override;

{ Protected declarations }

public

{ Public declarations }

publishedconstructor Create(AOwner:TComponent);

override;

property Numb:string read GetNumb write SetNumb;

end;

procedure Register;

implementation procedure Register;

begin

RegisterComponents('Samples', [TNMemo 1 ]);

end;

constructor TNMemol .Create(AOwner:TComponent);

begin inherited Create( AOwner);

end;

function TNMemol.GetNumb:string;

begin try

Result:=next; except on EConvertError do Begin Result:-01; text:-';

end;

end;

end;

procedure TNMemol ,SetNumb(value:string);

begin

FNumb:=Value;

Text:=value;

end;

procedure TNMemol.KeyPress(var keyxhar);

begin

if key in ['0'..'9'] then

key:=#0

end;

end.

Заключение

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

- редактирование строк текста;

- возможность использования различных шрифтов символов;

- задание произвольных межстрочных промежутков;

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

- сохранение на компьютере;

- открытие для редактирования уже готовых текстов;

Задачи, поставленные в курсовом проекте, были выполнены. Цель исследования - разработка приложения «Текстовый редактор» достигнута.

Приложение создает и редактирует текстовые документы, а также предоставляет пользователю возможность создания, открытия, редактирования, сохранения и печати текстовых документов. Программа имеет удобный графический интерфейс, позволяющий легко и комфортно осуществлять работу. В программе предусмотрена встроенная справка. Данный программный продукт работает в операционной среде Windows, приложение создано в графической среде Borland Delphi7.

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

Список использованных источников

1. Кэнту М. Delphi 7: Для профессионалов. - СПб.: Питер, 2010. - 1101 с.: ил.

2. Стивене P. Delphi. Готовые алгоритмы/Пер. с англ. - М.: ДМК Пресс, 2011.- 384.: ил.

3. Сухарев М.В. Основы Delphi. Профессиональный подход. - СПб.: Наука и Техника. 2009. - 600 е.: ил.

4. Тейксейра С., Пачеко К. Delphi 5, Руководство разработчика, в 2 т. - СПб.: Питер, 2011.

5. Borland Delphi 2005. Электронный самоучитель. ООО «ИДДК», 2005. Биллиг В.А. Основы программирования на C++. Интернет-университет информационных технологий - ИНТУИТ.ру, 2011.

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

...

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

  • Проектирование программного модуля в среде программирования Borland Delphi 7.0. Схемы алгоритмов решения задач по темам "Символьные переменные и строки", "Массивы", "Работа с файлами", "Создание анимации". Реализация программного модуля, код программы.

    отчет по практике [961,6 K], добавлен 21.04.2012

  • Принципы разработки алгоритмов и программ на основе процедурного подхода и на основе объектно-ориентированного подхода. Реализация программы Borland Pascal 7.0, ее интерфейс. Разработка простой программы в среде визуального программирования Delphi.

    отчет по практике [934,7 K], добавлен 25.03.2012

  • Методы грамматического разбора. Разработка структуры учебного транслятора на базовом языке программирования Object Pascal в среде объектно-ориентированного визуального программирования Borland DELPHI 6.0 с использованием операционной системы Windows XP.

    курсовая работа [493,8 K], добавлен 12.05.2013

  • Разработка визуального интерфейса пользователя, на основе экранных форм среды Delphi и визуальных компонент. Основные типы данных, используемые в программе MD 5 Calc. Однонаправленные хэш-функции. Процесс хэширования MD5, возможности его применения.

    курсовая работа [433,1 K], добавлен 28.08.2012

  • Разработка обучающей программы на языке программирования Borland C++ Bilder 6.0 с использованием объектно-ориентированного подхода. Особенности алгоритмической и логической реализации выполняемых системой операций. Основные формы программы и ее функции.

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

  • Моделирование предметной области. Состав программного модуля. Разработка логической структуры единой базы данных банковской информационной системы "БИС". Создание экранных форм для ввода и корректировки информации. Разработка интерфейса пользователя.

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

  • Создание программного продукта на языке Pascal в визуальной среде программирования Borland Developer Studio в консольном приложении. Разработка типизированного файла для записи данных и их вывод на экран, добавление данных в конец файла, поиск информации.

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

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

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

  • Разработка программного продукта (лабиринт с входом и выходом, состоящий из комнат) в среде разработки Borland C++ Builder 6. Требования пользователя к программному изделию. Программные ограничения, совместимость. Основные процессы разработки программы.

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

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

    реферат [21,0 K], добавлен 13.01.2015

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

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

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

    курсовая работа [782,4 K], добавлен 26.05.2014

  • Процесс поступления пациента в больницу. Программное обеспечение, используемое в разработке. Обзор Borland Delphi7, MS SQL Server 2008. Динамическое изменение и расширение структуры базы данных. Обоснование выбора СУБД и программного обеспечения.

    курсовая работа [875,4 K], добавлен 21.04.2013

  • Разработка программы по оформлению заказов на билеты Оренбургского государственного областного драматического театра им. Горького. Использование объектно-ориентированного программирования и реализация проекта в среде визуального программирования Delphi 7.

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

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

    курсовая работа [499,8 K], добавлен 10.11.2009

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

    контрольная работа [3,6 M], добавлен 18.10.2012

  • Характеристика системы программирования. Главные составные части Delphi. Интерфейс программного приложения. Результаты работы программы. Руководство системного программиста и оператора. Язык программирования Delphi, среда компилятора Borland 7.0.

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

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

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

  • Разработка приложения для работы с базой данных с использованием объектно-ориентированного и визуального программирования. Обзор языка элементов языка программирования Delphi. Проектирование базы данных автозаправки. Клиентская система приложения.

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

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

    лабораторная работа [405,1 K], добавлен 06.07.2009

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