Spec-Zone .ru
спецификации, руководства, описания, API
|
Вы когда-либо нуждались в уменьшенном варианте компонента, чтобы поместить в инструментальный набор или панель инструментов, или в строке состояния? Можно изменить размеры компонента, устанавливая клиентское свойство на компоненте. Три размера поддерживаются в дополнение к "регулярному" размеру: мини-, маленький, и большой. Следующий снимок экрана, взятый от 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);