|
Программирование >> Реализация целостности данных
ЧИСТЬ 3 Орий*гти;тваняй пэдьлоьательского интерфейса Простые сущности Сначала рассмотрим ситуацию, когда в форме должна быть нредстав-лена одна простая то есть которой соответствует единственна ица базы данных. Если эта сущность связана с другими сущностями, то она либо находится на стороне многие этих связей, либо остальные участники связей никак не представлены в создаваемой форме. Сущность CMitomera (Покупатели), показанная на рис. li i находится на стороне многие всех изображенных на диаграмме связей, за исключением связи между ней и сущностью t/m- (Заказы). Скорее всего, где-то в пользовательском приложении существует форма, предназначенная для ввода и обновления информации о покупателях. (Такая форма существует, даже если все данные о покупателях, хранимые в системе, были изначально получены из других источников или при вводе информации о других сущностях - например, во время заполнения формы при приеме заказа от покупателя). Возможно, вы не сочтете нужным включать сущность Orders в форму Customers. Ведь на логическом уровне это абсолютно разные сущности, и для ввода данных, представленных в модели сущностью Orders, в системе, скорее всего, будет отдельная форма. Рис. 14-1. Фрагмент диаграммы сущности - связи Итак ость Customers (Покупатели) находится на стороне многие всех связей с сущностями, представленными в форме, предназначенной дл мода и обновление маиии о покупателях, Поэтому в данном случае ее можно рассматривать как простую сущность. Это существенно облегчает процесс проектирования такой ГЛАВ сущнтетймя и формами йтгшы формы: нужно использовать подчиненные формы и представления данных в виде формируемых таблиц (grids). Следует всего лишь выбрать элементы управления, наиболее для каждого из поле ииы Customers (о том, как это сделать, рассказывается в следующей главе) и разместить их на проектируемой форме. Разумеется, размещать элементы управления следует не как попа- а по возможности, соблюдая все правила, перечисленные в руководстве The Windows Interface Guidelines for Software Design* ( Руководство no разработке интерфейса для Windows-пpилoжeниЙ!>>. Между внешними краями поля формы и элементами управления дима граница шириной в 7 единиц координатной сетки; расстояние между двумя соседними элементами управления должно составлять не менее 4 единиц координатной сетки; самые главные элементы управления следует поместить в левом верхнем углу формы. В этом нет ничего сложного, если размеры проектируемой формы не слишком жестко ограничены и в ней не очень много отдельных элементов управления (в противном случае придется поломать голову, чтобы уместить все эти кнопки, поля и списки на небольшом пространстве). Однако случаи, когда в одной форме нужно разместить множество различных элементов управления, уж редки. В Microsoft Access и Microsoft Visual Basic число элементов которые можно разместить в одной форме, ограничено. Для формы или отчета Microsoft Access оно не может быть больше 754, причем элементы, включенные в форму и впоследствии удаленные, также входят в это число. Для формы Microsoft Visual Basic максимальное число элементов управления - 254 (при этом двойные стрелки , увели-или уменьшать числовые значения в поле, рассматриваются как один элемент управления). На практике же, однако, редко встречаются формы, которые содержат более отдельных элементов управления или групп. (Заметьте: я сказала отдельных элементов или групп , поскольку группа, состоящая из трех переключателей, очевидно, воспринимается как отдельный логический .лементУ Итак, что же делать, если в вашей модели данных есть простая сущность с 75 атрибутами? Советую отображать данные по частям, а не все одновременно. Самый простой выход - сгруппировать поля по какому-либо признаку или разбить их на отдельные категории. Я сначала выбираю атрибуты, позволяющие однозначно определить эту сущность. Но учтите: список таких сущностей отнюдь не ограничивается ми, входящими тандидап, а включает также описательные атрибуты, позволяющие пользователям проверить, с каким экземпляром сущности они работают. I- часть 3 npoeim рсзэйже iwsMOsaTunbCKorKh ийврфейеа Для сущности Покупатели) в такую группу атрибутов, но которым можно однозначна аделитъ сущность, войдут атрибуты, представляющие адрес покупателя, его имя, а также, атрибут, преаставляющий сотрудника отдела продаж, обслуживающего этого покупателя. Для сущности Products (Продукты) такую группу составят атрибуты /гас/!кГСагеогу(Категория продукта). Name (Наименование) и Description (Описание). Эту группу следует поместить в верхней части формы: она должна жзться всегда, когда форма открыта. Оставшиеся атрибуты можно разделить на отдельные группы, все элементы которых логически собой и должны жаться одновременно. Для сущности Customers можно сгруппировать атрибуты так; атрибуты, к условиям заключения кон- тракта на поставку продукции (размеры скидок, сроки и способ оплаты) объединить одну группу; а дополнительную мапию о частном лице или фирме, заказавшей товар (фамилия и имя лица, сделавшего заказ, фамилия и имя менеджера по продажам и т. д.) в другую. Для сущности /rtJt/ufW - объединить атрибуты, относящиеся к технической продукции, в одну группу, а сведения об упаковке и расфасовке товара - в другую. Разделив атрибуты на несколько групп, определитесь, как эти группы будут представлены в разрабатываемой форме. Можно разместить несколько вкладок в главной форме - но одной на каждую группу атрибутов. Лично я предпочитаю это решение всем остальным: такая структура главной формы очень удобна и наглядна - пользователи сразу видят, какая дополнительная информация доступна из главной формы. Но этот подход целесообразно использовать, только если у вас не больше пяти-шести отдельных групп атрибутов. Если отдельных групп атрибутов множество, разместите все группы или некоторые из них на вспомогательных фо;)мах (subsidiaryforms). Вспомогательные формы можно использоват и если атрибуты н отдельных группах не на одной вкладке. Поместите на основной форме кнопки, которые, пользователи будут открывать вспомогательные формы. Такая композиция главной формы напоминает диалоговую панель управления. Однако и здесь не следует выходить за рамки разумных пределов. Расположение на главной панели великого множества кнопок, открывающих вспомогательные формы, ничуть не лучше, чем главная форма с 33 вкладками. Лучше вызывать вспомогательные формы из меню. Если вы решили использовать вспомогательные формы, открываемые из главных, позаботьтесь о поддержке контекста. Пользователи
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |