Ответ 1
Да, параметр style
рассматривается как битовая маска:
new Font("Verdana", Font.BOLD + Font.ITALIC, 12)
Я пытаюсь изменить шрифт JLabel
, поэтому он как BOLD
, так и ITALIC
, но, похоже, для этого не существует статического поля. Как мы можем объединить два стиля, чтобы мы могли иметь жирный, курсивный шрифт?
Этот код будет делать это только жирным шрифтом, используя статическое поле BOLD
, но не определено поле для жирного и курсивного:
Font font = new Font("Verdana", Font.BOLD, 12);
label = new JLabel ("New Image") ;
label.setFont(font);
label.setForeground(Color.Gray.darker());
Да, параметр style
рассматривается как битовая маска:
new Font("Verdana", Font.BOLD + Font.ITALIC, 12)
В документации API этого конструктора:
Параметры:
- ...
style
- константа стиля для шрифта. Аргумент стиля представляет собой целочисленную битовую маску, которая может бытьPLAIN
или побитовое объединениеBOLD
и/илиITALIC
(например,ITALIC
илиBOLD|ITALIC
). Если аргумент стиля не соответствует одному из ожидаемых целочисленных битмаск, тогда стиль устанавливается наPLAIN
.- ...
Таким образом, используйте
new Font("Verdana", Font.BOLD | Font.ITALIC, 12);
здесь.