Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СРС_проект_ИС.doc
Скачиваний:
18
Добавлен:
11.08.2019
Размер:
3.38 Mб
Скачать

5. Создание приложения, работающего с базой данных

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

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

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

Многодокументный интерфейс (MDI) применяется, когда большинство операций приложения выполняется в пределах рабочей области главного окна приложения, и все дочерние окна предназначены для выполнения подобных операций или содержат однотипную информацию. Примерами MDI-приложений являются Microsoft Word, Microsoft Excel, утилита SQL Builder из состава Delphi и т. д.

В большинстве случаев предпочтение следует отдавать интерфейсу SDI. Интерфейс MDI предназначен для очень узкого круга приложений. Кроме того, следует отметить, что Microsoft не поощряет разработку новых приложений MDI (для Windows было написано слишком много плохих программ этого типа).

Основными операциями нашего приложения будут:

  • регистрация новых заказчиков;

  • просмотр и редактирование справочника выпускаемой продукции;

  • оформление отгрузки продукции;

  • учет оплаты отгруженной продукции;

  • получение информации о недооплате.

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

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

5.2. Создание главной формы

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

Рис. 31. Главное окно приложения

Щелчок на первых четырех кнопках приведет к появлению соответствующих рабочих форм. Щелчком на кнопке Help вызывается справочник по работе с приложением. Щелчок на кнопке Close закрывает главное окно.

Заготовка главной формы автоматически появляется при создании нового проекта. Напомним, что модуль главной формы был ранее сохранен нами под именем fmMainUnit (см. п. 4.2). Изменим некоторые свойства главной формы следующим образом:

Caption = ‘Сбыт готовой продукции’ Heght = 100

Name = FMain Width = 281

BorderStyle = bsSingle BorderIcons.biMaximize = False

Для главного окна приложения наиболее подходящий стиль – BorderStyle = bsSingle с исключением из доступных кнопки развернуть (BorderIcons.biMaximize = False). Это позволит пользователю сворачивать и восстанавливать окно, но не даст возможности развернуть окно на весь экран или изменить размер окна.

Так как все действия в приложении выполняются через главную форму, необходимо, чтобы она была доступна в любой момент времени. Для этого укажем в методе-обработчике события OnShow нулевые координаты верхнего левого угла формы:

procedure TFMain.FormShow(Sender: TObject);

begin

FMain.Left:=0; FMain.Top:=0;

end;

Разместим на форме компонент Panel1, установим свойство Align = alClient и очистим свойство Caption. Расположим на панели шесть кнопок:

Button1 (Caption = ‘Изделия’) Button2 (Caption = ‘Заказчики’)

Button3 (Caption = ‘ТТН’) Button4 (Caption = ‘ПТР’)

BitBtn1 (Kind = bkHelp) BitBtn2 (Kind = bkClose)

Разместим на форме компонент PopupMenu1. В свойстве PopupMenu формы FMain выберем PopupMenu1.

Свяжем модуль главного окна с модулем данных dmSaleUnit командой File > Use Unit. Сохраним все сделанные в проекте изменения.