Ошибки при создании экранных форм
Материал из GedeminWiki
(Различия между версиями)
SYSDBA (обсуждение | вклад) |
SYSDBA (обсуждение | вклад) |
||
| Строка 1: | Строка 1: | ||
| + | При создании внешнего вида диалогового окна следует придерживаться нескольких достаточно простых правил: | ||
| + | * Использовать шрифт одного начертания, размера и цвета. Как правило, шрифт устанавливается для формы и для всех визуальных элементов свойство ParentFont устанавливается в True. | ||
| + | * Выравнивать группы элементов по левому краю. Устанавливать одинаковые расстояния между элементами в группе. Использовать одинаковые промежутки от элементов (групп элементов) до края формы. | ||
| + | * Использовать одинаковую высоту для однотипных визуальных элементов. | ||
| + | * Ширину полей ввода устанавливать в соответствии с типом данных. | ||
| + | * Контролировать порядок табуляции: слева-направо, сверху-вниз. | ||
| + | * Не перегружать форму нефункциональными визуальными элементами (рамками, панелями, разделительными линиями). В тоже время помнить, что умеренное использование таких элементов для выделения и группировки логически связанных эелементов управления способно существенно упростить чтение формы. | ||
| + | * Для привязки визуальных элементов к краям формы изменяемого размера использовать панели с установленным свойством выравнивания (Align), вместо якорей (Anchor). | ||
| + | * Экономно использовать рабочее пространство формы. | ||
| + | |||
| + | В качестве примера удачной и неудачной компоновки рассмотрим несколько экранных форм. | ||
| + | |||
=== Документ "Выдача на сервис" из настройки СТО === | === Документ "Выдача на сервис" из настройки СТО === | ||
| + | |||
| + | Ниже представлен исходный вид формы: | ||
http://gsbelarus.com/gs/images/gs/2007/ui/1.jpg | http://gsbelarus.com/gs/images/gs/2007/ui/1.jpg | ||
http://gsbelarus.com/gs/images/gs/2007/ui/2.jpg | http://gsbelarus.com/gs/images/gs/2007/ui/2.jpg | ||
| + | |||
| + | Обратите внимание, как нерационально используется место на вкладках "Основные" и особенно "Аттрибуты". При попытке изменить размер формы кнопки пропадают с экрана: | ||
http://gsbelarus.com/gs/images/gs/2007/ui/3.jpg | http://gsbelarus.com/gs/images/gs/2007/ui/3.jpg | ||
| + | |||
| + | Ремонт формы начнем с набора вкладок. Переместим единственный чек-бокс с вкладки "Аттрибуты" и расположим экранные элементы в три строки вместо пяти. Уменьшим и выровняем все промежутки. Уменьшим высоту разделительной линии (Splitter). Проблему с пропаданием кнопок решим следующим образом: | ||
| + | # Внизу окна расположим панель usrg_pnlBtm, установив для нее Align=alBottom. | ||
| + | # На ней разместим две панели: usrg_pnlLeft и usrg_pnlRight с выравнивание влево и вправо соответственно. | ||
| + | # На левую панель перенесем (команда Вырезать и, затем, Вставить, из контекстного меню) кнопки "Новый", "Меню", "Справка". На правую -- "Ок" и "Отмена". | ||
| + | # Визуальные границы панелей сделаем плоскими. | ||
| + | # Для главной панели формы -- pnlMain -- установим свойство Align=alClient. | ||
http://gsbelarus.com/gs/images/gs/2007/ui/4.jpg | http://gsbelarus.com/gs/images/gs/2007/ui/4.jpg | ||
| + | |||
| + | В итоге, преобразованная форма примет следующий вид: | ||
http://gsbelarus.com/gs/images/gs/2007/ui/5.jpg | http://gsbelarus.com/gs/images/gs/2007/ui/5.jpg | ||
Версия 18:34, 9 августа 2007
При создании внешнего вида диалогового окна следует придерживаться нескольких достаточно простых правил:
- Использовать шрифт одного начертания, размера и цвета. Как правило, шрифт устанавливается для формы и для всех визуальных элементов свойство ParentFont устанавливается в True.
- Выравнивать группы элементов по левому краю. Устанавливать одинаковые расстояния между элементами в группе. Использовать одинаковые промежутки от элементов (групп элементов) до края формы.
- Использовать одинаковую высоту для однотипных визуальных элементов.
- Ширину полей ввода устанавливать в соответствии с типом данных.
- Контролировать порядок табуляции: слева-направо, сверху-вниз.
- Не перегружать форму нефункциональными визуальными элементами (рамками, панелями, разделительными линиями). В тоже время помнить, что умеренное использование таких элементов для выделения и группировки логически связанных эелементов управления способно существенно упростить чтение формы.
- Для привязки визуальных элементов к краям формы изменяемого размера использовать панели с установленным свойством выравнивания (Align), вместо якорей (Anchor).
- Экономно использовать рабочее пространство формы.
В качестве примера удачной и неудачной компоновки рассмотрим несколько экранных форм.
Документ "Выдача на сервис" из настройки СТО
Ниже представлен исходный вид формы:
Обратите внимание, как нерационально используется место на вкладках "Основные" и особенно "Аттрибуты". При попытке изменить размер формы кнопки пропадают с экрана:
Ремонт формы начнем с набора вкладок. Переместим единственный чек-бокс с вкладки "Аттрибуты" и расположим экранные элементы в три строки вместо пяти. Уменьшим и выровняем все промежутки. Уменьшим высоту разделительной линии (Splitter). Проблему с пропаданием кнопок решим следующим образом:
- Внизу окна расположим панель usrg_pnlBtm, установив для нее Align=alBottom.
- На ней разместим две панели: usrg_pnlLeft и usrg_pnlRight с выравнивание влево и вправо соответственно.
- На левую панель перенесем (команда Вырезать и, затем, Вставить, из контекстного меню) кнопки "Новый", "Меню", "Справка". На правую -- "Ок" и "Отмена".
- Визуальные границы панелей сделаем плоскими.
- Для главной панели формы -- pnlMain -- установим свойство Align=alClient.
В итоге, преобразованная форма примет следующий вид: