Вопрос

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

Это было полезно?

Решение

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top