
3-й семестр / Лекции / 4 - Презентация - Полиморфизм
.pdf
Центрдистанционногообучения
GUI проектирование
•Мы должны помнить, что цель программного обеспечения, чтобы помочь пользователю решить проблему
•С этой целью проектировщик GUI должен:
üУзнать нужды пользователя üПредотвратить ошибки пользователей üОптимизацию возможностей пользователя üБыть последовательным
6-61online.mirea.ru

Центрдистанционногообучения
Будьте последовательными
•Последовательность –это важно, так-как пользователи
привыкают к некоторым вещам, появляющихся и работающих в определенном порядке и связанными определенными отношениями
•Цвета должны быть использованы последовательно, чтобы указывать на схожие типы информации или ее обработку
•Структура экрана должна соответствовать принятому шаблону при переходе из одной части системы в другую ( например при переходе через меню)
•Например, сообщения об ошибках должны появляться в местах, соответствующих разработанной структуре меню
6-62online.mirea.ru

Центрдистанционногообучения
Менеджеры Layout
•Менеджер layout manager является объектом, который
определяет способ, которым компоненты расположены в контейнере
•Есть несколько предопределенных менеджеров компоновки, определенных в стандартной библиотеке классов Java:
Flow Layout
Border Layout
Card Layout Определены AWT
Grid Layout
GridBag Layout
Box Layout |
Определены в Swing |
Overlay Layout |
|
6-63online.mirea.ru

Центрдистанционногообучения
Менеджеры Layout
•Каждый контейнер имеет менеджер компоновки по умолчанию, но мы можем явным образом установить менеджер компоновки, а также
•Каждый менеджер компоновки имеет свои особые правила, регулирующие, как будут организованы компоненты
•Некоторые менеджеры компоновки обратить внимание на нужный размер или Расстановка компонента, в то время как другие этого не делают
•Менеджер компоновки пытается настроить расположение по мере добавления компонентов и, как контейнеры изменены
6-64online.mirea.ru

Центрдистанционногообучения
Менеджеры Layout
•Мы можем использовать метод setLayout , что бы изменить Layout менеджер
JPanel panel = new JPanel(); panel.setLayout(new BorderLayout());
•В следующем примере используется контейнер с закладками, который позволяет работать с одной из нескольких панелей, которые могут быть выбраны
6-65online.mirea.ru

Центрдистанционногообучения
Менеджеры Layout
6-66online.mirea.ru

Центрдистанционногообучения
Flow Layout
•Flow layout располагает столько компонентов, сколько можно расположить в ряд, затем переходит к следующей строке
•Ряды создаются по мере необходимости, чтобы вместить все компоненты,
•Компоненты отображаются в порядке их добавления в контейнер
•Каждая строка компонентов центрируется по горизонтали в окне по умолчанию, но могут быть также выровнены влево или вправо
•Кроме того, горизонтальные и вертикальные зазоры между компонентами может быть явно установлены
6-67online.mirea.ru

Центрдистанционногообучения
Flow Layout
• FlowPanel.java
6-68online.mirea.ru

Центрдистанционногообучения
Border Layout
•Компонент border layout определяет пять областей, в которых компоненты могут быть добавлены с ориентацией по сторонам света и в центре
North
West |
|
Center |
|
East |
|
|
|
|
|
South
6-69online.mirea.ru

Центрдистанционногообучения
Border Layout
•BorderLayout – это один из layout Java Swing, который используется для расположения компонентов на контейнере.
•Принцип, который использует BorderLayout для компоновки прост – всё пространство контейнера разбивается на пять частей.
•В каждой из этих частей располагается один компонент.
•При добавлении компонента на контейнер с BorderLayout разработчик обязательно указывает, куда именно он хочет поместить компонент.
6-70online.mirea.ru