Как настроить толщину границы JFrame в Java - PullRequest
1 голос
/ 04 декабря 2009

Я использую Vista, мое старое Java-приложение, запущенное на Win XP, имеет тонкие границы, толщиной около 2 пикселей, но теперь в Vista границы по умолчанию превращаются в толстые линии, возможно, толщиной 6,7 пикселей, можно ли указать в Java насколько толстыми должны быть мои границы JFrame?

1 Ответ

1 голос
/ 13 декабря 2009

По умолчанию границы обрабатываются собственной оконной системой. Но в JFrame API есть метод setDefaultLookAndFeelDecorated(boolean). Это говорит о том, что если установлено значение true и , если текущий внешний вид поддерживает это, он будет использовать внешний вид для рисования границ, заголовка и кнопок. Я никогда не пробовал это, так как я не знаю, какой внешний вид и чувствует поддержку украшения. Первое, что нужно сделать, это найти подходящее, затем установить его с помощью аргумента UIManager или командной строки -Ddefault.laf и включить оформление внешнего вида с помощью метода JFrame.

Если вы используете эту опцию, вы, вероятно, получите нестандартное оформление окна. Учитывая маленькие кусочки глазного яблока Vista (свечение над кнопками и полупрозрачная строка заголовка), вы уверены, что хотите это сделать?

Другой вариант - использовать метод JFrame.setUndecorated(boolean) и самостоятельно обрабатывать рендеринг границ, строки заголовка и т. Д., Но это, вероятно, еще сложнее.

...