Spec-Zone .ru
спецификации, руководства, описания, API
След: Создание GUI С JFC/Swing
Урок: Изменение Стили
Раздел: Стиль Нимба
Изменение размеров Компонента
Домашняя страница > Создание GUI С JFC/Swing > Изменение Стили

Изменение размеров Компонента

Вы когда-либо нуждались в уменьшенном варианте компонента, чтобы поместить в инструментальный набор или панель инструментов, или в строке состояния? Можно изменить размеры компонента, устанавливая клиентское свойство на компоненте. Три размера поддерживаются в дополнение к "регулярному" размеру: мини-, маленький, и большой. Следующий снимок экрана, взятый от Laffy, показывает эти четыре размера рядом.

Снимок экрана Laffy, показывая все четыре разновидности размера рядом.

Один компонент, который не поддерживает свойство разновидностей размера, JLabel. Однако, можно изменить размер метки, изменяя размер ее шрифта.


Отметьте: 

Другие реализации стили, такие как Вода Apple, могли бы также соблюдать клиентское свойство разновидностей размера. Нимб является в настоящий момент единственным стилем Sun, который поддерживает разновидности размера.


Можно установить размер компонента с одной строкой кода, прежде, чем компонент будет выведен на экран. Следующий отрывок показывает, как использовать каждый размер:

// mini
myButton.putClientProperty("JComponent.sizeVariant", "mini");
// small
mySlider.putClientProperty("JComponent.sizeVariant", "small");
// large
myTextField.putClientProperty("JComponent.sizeVariant", "large");

Если Вы установили свойство разновидностей размера правильно, но компонентные дисплеи в его "регулярном" размере, Вы, возможно, должны были бы вызвать обновление к UI. Можно сделать так, вызывая SwingUtilities.updateComponentTreeUI(Component) метод перед окном выводится на экран. Следующий фрагмент кода обновляет окно и все компоненты, которые это содержит:

JFrame frame = ...;

SwingUtilities.updateComponentTreeUI(frame);

frame.pack();
frame.setVisible(true);

Проблемы с примерами? Попытайтесь Компилировать и Выполнить Примеры: FAQ.
Жалобы? Поздравление? Предложения? Дайте нам свою обратную связь.

Предыдущая страница: Изменение Вида Нимба
Следующая страница: Изменение Цветной Темы