Имя формы – EvalForm
Заголовок – Произвольная функция
Описание – форма предназначена для ввода произвольной пользовательской функции, отображении/скрытия ее графика.
В таблице 2 представлен перечень компонентов содержащихся на форме.
Таблица 2 – Описание формы ввода произвольной функции
Имя компонента в модуле | Назначение компонента | События компонента | Назначение обработчиков событий | Примечания |
edEval | Поле для ввода произвольной функции | - | - | - |
cbEval | CheckBox для отображения/скрытия графика произвольной функции | - | - | - |
btnOk | Функция принятия изменений в произвольной функции | onClick | Выполняется проверка введенной функции, если функция соответствует правилам, то происходит изменение произвольной функции, иначе выводится сообщение | ShowMessage('Ошибка в формуле'); |
Файл формы – SysInfo.pas
Имя формы – SystemInfoForm
Заголовок - Информация о системе
Описание – форма предназначена для вывода информации о текущей системе
Таблица 3 – Описание формы информации о системе
Имя компонента в модуле | Назначение компонента | События компонента | Назначение обработчиков событий |
SystemInfoForm | Форма для отображения информации о системе | onCreate | Вызывается функция GetSystemInfo и результат заносится в поля формы |
leProcessorType, leProcessorArchitecture, leProcessorLevel,leAllocationGranularity, lePageSize, leMinimumApplicationAddress, leMaximumApplicationAddress, leActicveProcessorMask, leNumberOfProcessor | Компоненты для отображения информации о системе |
Файл формы – About.pas
Имя формы – AboutForm
Заголовок - О программе
Описание – форма предназначена для вывода информации о разработчике
Таблица 4 – Описание формы информации о разработчике
Имя компонента в модуле | Назначение компонента | События компонента | Назначение обработчиков событий | Примечания |
meAabout | Поле для вывода информации о разработчике | - | - | - |
btnOk | Кнопка закрытия формы | onClick | Закрытие формы |
3.3 Описание компонентов:GroupBox, SavePictureDialog
1. Компонент TGroupBox
Модуль - StdCtrls
Описание:
TGroupBox используется для оформления внешнего вида приложения и для группировки установленных в форму компонентов по смыслу. Все компоненты в форме можно разделить по функциональным назначениям и разместить в таких компонентах. Удобен при назначении порядка перехода по компонентам с помощью кнопки Tab. Заголовок этого компонента изменяется свойством Caption.
Приведем иерархию классов для компонента TGroupBox
TObject -> TPersistent -> TComponent -> TWinControl -> TCustomControl -> TCustomGroupBox -> TGroupBox
Основные свойства, методы и события для этого компонента приведены в таблицах 5,6 и 7.
Таблица 5 – Основные свойства компонента ТGroupBox
Наименование | Описание |
property Components[Index: Integer]: TComponent; | Список всех компонентов, для которых данный компонент является владельцем. |
property Brush: TBrush; | Определяет цвет и шаблон для отрисовки фона копмонента. |
property ClientOrigin: TPoint; | Возвращает координаты экрана в пикселях левого верхненго угла клиентской области компонента. |
property TabOrder: TTabOrder; | Отображает номер в последовательности при переходе по компонента с помощью |
property Controls[Index: Integer]: TControl; | Список всех дочерних компонентов |
Таблица 6 – Основные методы компонента ТGroupBox
Наименование | Описание |
procedure Broadcast(var Message); | Посылает сообщение каждому из дочерних компонентов |
function CanFocus: Boolean; dynamic; | Возвращает значение, может ли компонент принимать фокус. |
Procedure InsertControl(AControl: TControl); | Добавляет компонент в список дочерних компонентов данного |
function FindChildControl(const ControlName: string): TControl; | Возвращает указатель на дочерний компонент по его имени. |
procedure SetFocus; virtual; | Устанавливает фокус на компонент |
Таблица 7 – Основные события компонента ТGroupBox
Наименование | Описание |
property OnEnter: TNotifyEvent; | Событие вызывается когда компонент получает фокус |
property OnExit: TNotifyEvent; | Событие вызывается когда компонент теряет фокус |
property OnClick: TNotifyEvent; | Событие вызывается когда происходит клик на компоненте |
property OnDblClick: TNotifyEvent; | Событие вызывается при двойном нажатии левой кнопки мыши на компоненте |
property OnMouseDown: TMouseEvent; | Событие вызывается когда происходит нажатие кнопки мыши при установленном на компоненте указателе мыши |
2. Компонент TSavePictureDialog
Модуль – ExtDlgs
Описание:
Компонент TSavePictureDialog отображает модальное диалоговое окно для выбора имени и сохранения графических файл. Этот компонент похож на компонент TSaveDialog, за исключением того, что он включает в себя квадратное окно предварительного просмотра. Если выбранная картинка может отображаться с использованием компонента TPicture, то она отображается в области предварительного просмотра; поддерживаемые типы файлов включают в себя точечные рисунки Windows(.BMP), иконки (.ICO), Windows метафайлы (.WMF), и расширенный метафайл Windows (.EMF). Если выбранный файл не может быть отображен, в области предварительного просмотра появляестя надпись “(None)”.
Иерархиякомпонента:
TObject -> TPersistent -> TComponent -> TCommonDialog -> TOpenDialog -> TOpenPictureDialog -> TSavePictureDialog
Пример использования данного компонента в программе приведен на рисунке 17.
procedure TMainForm.mmSaveClick(Sender: TObject);
begin
if SavePictureDialog.Execute then Charter.SaveToFile(SavePictureDialog.FileName);
end;
Основные свойства, методы и события для этого компонента приведены в таблицах 8,9 и 10.
Таблица 8 – Основные свойства компонента ТGroupBox
Наименование | Описание |
property DefaultExt: String; | Устанавливает расширение файлов используемое по умолчанию |
property FileName: TFileName; | Определяет имя последнего выбранного файла |
property Filter: String; | Определяет маску файлов доступную в текущем диалоге |
property Title: String; | Определяет заголовок текущего диалога |
property InitialDir: String; | Определяет текущую директорию при открытии диалога |
Таблица 9 – Основные методы компонента ТGroupBox
Наименование | Описание |
function Execute: Boolean; override; | Открывает диалоговое окно |
function GetStaticRect: TRect; virtual; | Определяет координаты зарезервированной области диалогового окна |
Таблица 10 – Основные события компонента ТGroupBox
Наименование | Описание |
property OnCanClose: TCloseQueryEvent; | Происходит когда пользователь пытается закрыть диалоговое окно |
property OnFolderChange: TNotifyEvent; | Происходит при смене директории |
property OnIncludeItem: TIncludeItemEvent; | Происходит перед тем, как выбранный файл добавляется в список |
property OnTypeChange: TNotifyEvent; | Происходит когда типы файлов, отображаемых в диалоговом окне изменяются |
4. ТЕСТОВЫЕ ВЫЗОВЫ ПРОГРАММЫ
Ниже приведены примеры тестовых вызовов программы: рисунок 18 - пример отображения графика первого интеграла с переменным верхним пределом, рисунок 19 - примеры расчета первого и второго интеграла с заданными параметрами точности вычислений. На рисунке 20 представлен пример исключительной ситуации, вызванной неверным задание границ интегрирования. На рисунке 21 - пример вызова API-функции GetSystemInfo, отображающей информацию о текущей системе.