Программирование в Delphi. Компоненты страниц Dialogs и Samples
Содержание
Содержание 3
Введение 5
1. Постановка задачи 8
1.1 Назначение и функции программы 8
1.2 Информационная база задачи 8
1.2.1 Входная информация 8
1.2.2 Выходная информация 9
1.3 Система меню 9
1.4 Система помощи 9
1.5 Контрольные примеры 10
1.6 Алгоритм программы 11
1.7 Обзор языка программирования и среды разработки программ. 11
2. Описание программы 18
2.1 Описание модулей программы 18
3. Описание применения 20
Заключение 22
Список используемых источников 23
Приложение 1 24
Листинг основных модулей программы 24
Приложение 2 32
Внешний вид форм программы 32
Главная форма: 32
Приложение 3 33
Список использованных компонентов 33
Введение
В данной курсовой работе предложено создать Windows-приложение на алгоритмическом языке Object Pascal в среде визуального программирования Delphi. Разработчику ставиться вполне определенная задача, при выполнении которой используются навыки работы с операционными системами, программными оболочками, разнообразными служебными и сервисными средствами. А также навыки по алгоритмизации и программированию в интегрированной визуальной среде программирования Delphi.
Delphi – это среда разработки приложений, ориентированных на работу в операционных системах семейства Windows. Но кроссплатформенное программирование стало доступно в Delphi 7 благодаря использованию библиотеки компонентов CLX. При неизбежных для кроссплатформенного программирования трудностях реализации сложного кода, использующего системные вызовы и технологии удаленного доступа, в Delphi решена задача быстрого визуального проектирования пользовательского интерфейса. Для этого применяется набор стандартных компонентов, имеющих практически идентичную функциональность и схожий программный интерфейс. Основой Delphi является графическая среда разработки приложений, называемая интегрированной средой разработки (IDE). Delphi, как и всякая современная среда разработки приложений основана на объектно – ориентированном программировании.
Объектно
– ориентированное программирование-это
Программа в среде DELPHI составляется как описание алгоритмов, которые будут выполняться, если возникает определенное событие, связанное с формой или с каким-либо из размещенных на ней компонентов. Для каждого обрабатываемого события, с помощью страницы Events инспектора объектов в тексте программы организуется процедура (procedure), между ключевыми словами begin и end которой программист записывает на языке Object Pascal требуемый алгоритм.
И
так, в первой главе данного курсового
проекта описываются этапы
Во второй главе курсового проекта обосновывается выбор среды разработки, описывается пользовательский интерфейс программы, логика работы программы, реализация отдельных процедур и функций.
В
третьей главе курсового
В заключении приведены выводы и подводится итог по результатам выполненной работы, указывается, как выполнена поставленная задача, какие функции не реализованы, объясняется причина этого, указывается, какие изменения и добавления возможны в будущем, что необходимо доработать, чтобы улучшить программу.
Список использованных источников содержит полный перечень технической литературы, использованной для написания данной курсовой работы.
Приложения содержат блок-схему или обобщенный алгоритм работы программы, результаты тестирования программы и листинг программы.
- Постановка задачи
1.1 Назначение и функции программы
Разрабатываемая
программа носит обучающе-
К требованиям к программе можно отнести:
- простота в обращении;
- наглядность, в частности отображение компонент, соответствующих входным и выходным данным;
- возможность сохранения, изменения, вывода и ввода из файла входных данных;
- в случае возникновения ошибки, конкретно указать пользователю, в чем состоит его ошибка;
- «понятность» отображаемого результата.
1.2 Информационная база задачи
1.2.1 Входная информация
Ко входной информации в данной программе относятся:
- Текст, вводимый пользователем;
- Изображения, импортируемые пользователем;
Входной файл имеет следующую структуру:
- Количество ячеек таблицы;
- Некоторый формат данных;
Такую же структуру должен иметь файл, создаваемый программой.
Исходные данные могут быть введены:
- Из файла;
- С клавиатуры, путем заполнения полей ввода;
Ограничения входной информации: входная информация не ограничена.
1.2.2 Выходная информация
К выходным данным относятся данные, которые выводятся на монитор в результате работы программного продукта. К ним можно отнести:
- Таблица с введёнными данными;
- Компонента с введённым текстом;
- Импортируемые изображения ;
1.3 Система меню
Меню в программе будет содержать пять разделов: «Файл», «Шрифт», «Заливка», «Справка», «Выход».
Подразделы меню:
«Открыть», «Сохранить», «Открыть изображение», «Сохранить изображение», «Выход».
«Таблицы».
«Заливка формы», «Заливка таблицы»
«О программе…», «Справка».
1.4 Система помощи
В программе используется контекстно-зависимая помощь, содержащая 5 разделов и 11 подразделов:
О методе:
Описание метода;
Поля ввода:
Количество вершин графа;
Пропускная способность;
Стоимость;
Величина потока;
Способы ввода данных:
Ввод из файла;
Ввод с клавиатуры;
Заполнение случайными числами;
Результат:
Отображение результата
Работа с графом:
Назначение стоков и истоков;
Перемещение вершин графа.
Помощь предоставляет пользователю информацию о программе, о полях ввода и их ограничениях, о форме преставления результата расчета и др.
В помощи используются изображения окон программы, что делает ее наглядной и простой для понимания.
1.5 Контрольные примеры
Контрольные примеры, используемые для верификации программы, можно разделить на следующие группы:
-примеры,
проверяющие контроль вводимых
из файла данных (количество вершин,
пропускная способность,
-примеры,
тестирующие программу в
-примеры,
проверяющие способность
-примеры,
проверяющие правильность
1.6 Алгоритм программы
1.7 Обзор языка программирования и среды разработки программ.
Важной вехой в развитии программирования явилось создание и широкое распространение языка Object Pascal. Этот язык, сохранив средства ставшего общепризнанным стандартом для написания системных и прикладных программ языка Pascal (процедурно-ориентированный язык), ввел в практику программирования возможности нового технологического подхода к разработке программного обеспечения, получившего название “объектно-ориентированное программирование”. В настоящее время наряду с Object Pascal существует множество других объектно-ориентированных языков программирования.
Самой популярной средой программирования на языке Object Pascal является среда разработки Delphi.
Delphi - это комбинация нескольких важнейших технологий:
- высокопроизводительный компилятор в машинный код;
- объектно-ориентированная модель компонент;
- визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов;
- масштабируемые средства для построения баз данных.
Компилятор, встроенный в Delphi, обеспечивает высокую производительность, необходимую для построения приложений в архитектуре “клиент-сервер”. Этот компилятор в настоящее время является самым быстрым в мире. Он предлагает легкость разработки и быстрое время проверки готового программного блока и в то же время обеспечивает качество кода.
Основной
упор объектно-ориентированной
Cреда Delphi включает в себя полный набор визуальных инструментов для скоростной разработки приложений (RAD - rapid application development), поддерживающей разработку пользовательского интерфейса. VCL - библиотека визуальных компонент, включает в себя стандартные объекты построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами, управление DDE и OLE.
В данной курсовой предложено создание приложения с помощью компонент страниц Dialogs и Samples.
TOpenDialog и TSaveDialog - диалоги открытия и сохранения файлов
Эти
компоненты имеют идентичные свойства
и поэтому рассматриваются
Компоненты TOpenDialog и TSaveDialog предназначены для организации стандартных диалоговых окон.
Свойства:
FileName: String;
-
позволяет на входе в
InitialDir: String;
-
позволяет установить
Filter: String
-
позволяет установить фильтр
файлов, показываемых в диалоговом
окне. Представляет собой любое
количество пар
Filter := ’Текстовые файлы (*.txt, *.doc)|*.txt, *.doc’;
Компонент TOpenPictureDialog и TSavePictuteDialog
Компоненты TOpenPictureDialog и TSavePictuteDialog позволяют организовать специальные диалоги открытия и сохранения графических изображений. В них предусмотрены стандартные фильтры для выбора графических файлов (с расширениями bmp, ico, wmf и emf). Во-вторых, в окна диалога включены панели для предварительного просмотра выбираемого файла.
TColorDialog
Этот компонент позволяет выбрать стандартный цвет, либо задать собственный. Основным свойством данного компонента является
Color: TColor;
в котором содержится выбранный цвет.
Компонент TFontDialog
С помощью этого компонент можно выбрать шрифт из множества шрифтов Windows.
Свойства компонента TFontDialog задаются множеством:
Device =(fdScreen, fdPrinter);
-
указывает, для какого
Font: TFont;
- содержит описание выбранного шрифта.
Пример. Пусть на форме расположены компоненты SpeedButton1, FontDialog1, Labe1 и ColorDialog1. По нажатию на SpeedButton1 необходимо осуществить последовательно диалоги выбора цвета и шрифта. Пример:
Procedure TForm1.Button1Click( );
begin
if ColorDialog1.Execute then
Form1.Color := ColorDialog1.Color;
if FontDialog1.Execute then
Label1.Font := FontDialog1.Font;
end;
Компонент TPrintDialog
Эта компонента позволяет организовать управление принтером и устанавливать его свойства.
Свойства:
Collate: Boolean;
Если
Collate = true;
то можно использовать свойство CheckBox “Разобрать”. При этом сначала будет печататься первая копия, затем вторая и т.д.;
Если
Collate = false;
сначала будут печататься все первые страницы, затем вторые и т.д.;
Copies: Integer
-
указывает количество копий.
FromPage: Integer
- определяет начальную страницу печати;
ToPage : Integer
- определяет конечную страницу печати;
PrintRange =(prAllPages, prSelection, prPageNums);
-
определяет диапазон
TPrinterSetupDialog - диалог настройки параметров принтера
Компонент
создает окно настройки параметров
принтера, вид которого зависит от
типа принтера. Этот диалог взаимодействует
с драйвером принтера и не возвращает
в программу никакой
TFindDialog - диалог поиска
Стандартное диалоговое окно компонента TFindDialog используется для поиска фрагмента текста.
Свойства компонента:
| property FindText: String; | Указывает образец для поиска |
| property Left: Integer; | Содержит горизонтальную позицию левого верхнего угла места появления окна |
| property Options: TFindOptions; | Определяет настройку диалога (см. ниже) |
| property Position: TPoint; | Содержит горизонтальную и вертикальную позицию левого верхнего угла места появления окна |
| property Top: Integer; | Содержит вертикальную позицию левого верхнего угла места появления окна |
TReplaceDialog - диалог поиска и замены
Компонент TReplaceDialog создает и обслуживает окно поиска и замены текстового фрагмента.
Класс TReplaceDialog является прямым потомком класса TFindDialog и наследует от него большинство свойств. Дополнительно в компоненте определено свойство ReplaceText: string, в котором содержится текст замены, и событие OnReplace, которое возникает при нажатии кнопки заменить или заменить все.
4. Компоненты страницы
Samples
TGauge это графически улучшенный ProgressBar. Содержит в себе надпись процента выполнения действия. В свойствах MinValue, MaxValue, Progress указаны соответственно минимальное, максимальное и текущее значение. Свойство BackColor содержит цвет фона, а ForeColor - цвет заполнения. Свойством Kind можно задать разный тип отображения индикатора.
Он отличается от TProgress разнообразием форм.
| property BackColor: TColor; property ForeColor: TColor; TGaugeKind = (gkText, gkHorizon-talBar, gkVerticalBar, gkPie, gkNeedle) ; | Цвет незакрашенной части индикатора Цвет закрашенной части индикатора Определяет форму индикатора |
| property Kind: TGaugeKind; property MaxValue: Longint; | Определяет максимальное значение диапазона изменения свойства progress |
| property MinValue: Longint; | Определяет минимальное значение диапазона изменения свойства progress |
| property PercentDone: Longint; | Содержит текущее значение progress в процентах от его диапазона изменения |
| property Progress: Longing; | Содержит текущее значение изменяющейся числовой величины |
| property ShowText: Boolean; | Если содержит True, в центре компонента выводится строковое представление значения PercentDone |
TColorGrid - выбор или отображение цвета
Компонент предназначен для выбора и/или отображения цветов из 16-цветной палитры. Выбирать/отображать можно два цвета: основной и фоновый. Основной выбирается щелчком левой кнопки мыши и отображается символами fg, фоновый выбирается правой кнопкой и отображается символами bg (если оба цвета совпадают, соответствующая клетка таблицы помечается символами fb).
Индекс
цвета - это число в диапазоне
0... 15, указывающее номер
Пары свойств BackgroundEnabled - ClickEnablesColor И ForegroundEnabled - ClickEnablesColor запрещают выбор и отображение соответствующего цвета только в том случае, когда каждое из них имеет значение False. Однако даже в этом случае свойство selection хранит номер ячейки таблицы, по которой последний раз был произведен щелчок левой или правой кнопкой мыши. Это свойство изменяется до возникновения события от мыши и при необходимости может использоваться для выбора цвета без его отображения. С помощью метода
function ColorToIndex(AColor: TColor): Integer;
программа может получить индекс табличного цвета, наиболее близкого к цвету AColor. Событие
property OnChange: TNotifyEvent;
возникает
только при разрешенном выборе/
TSpinEdit по своему функциональному назначению схож с компонентом TUpDown (страница Win32). Значение Value видно сразу в момент его изменения в индикаторе. Кроме того значение можно корректировать с помощью цифр.
Компонент TSpinEdit предназначен для ввода/отображения числа. Он представляет собой комбинацию специализированного потомка однострочного редактора rcustomEdit и кнопок TSpinButton. Редактор способен вводить только числа (в этом и заключается его специализация), а кнопки используются для изменения числа на некоторую фиксированную величину.
TDirectoryOutline показывает древовидный список каталогов.
TCalendar - календарь. Свойство Year, Month, Day (год, месяц, день) разбиты на три отдельные части.
В отличие от компонента TUpDown компонент TSpinButton не связан с регулированием числовой величины и может использоваться просто как пара кнопок: верхняя (up) и нижняя (Down). Для компонента следует написать обработчики его событий onup-click и onDownclick, в которых реализуется реакция программы на щелчок по той или иной кнопке.
Рисунки на кнопках определяются свойствами upGlyph и DownGlyph. Каждый рисунок может содержать 1, 2 или 3 изображения: 1-е - для нормальной кнопки, 2-е - для запрещенной, 3-е - для нажатой.
- Описание программы
В этом разделе приводится описание модулей программы в которых реализован ввод/вывод и сохранение данных, изменения всех окон формы, то есть решение поставленной задачи,
2.1 Описание модулей программы
Если количество записей, необходимых ввести в таблицу, превышает количество установленных строк таблицы, то создаём кнопку «Добавить» и разрешаем появление полос прокрутки, что позволяет ввести нужное количество информации в таблицу.
Если количество введённых записей при использовании программы не нужно, то создадим кнопку «Очистить», что позволяет одним нажатием этой кнопки очистить все ячейки.