Как установить цвет фона JLabel?

В моем JPanel я устанавливал фон JLabel на другой цвет. Я вижу слово «Тест», и оно синее, но фон не меняется вообще. Как я могу его показать?

 this.setBackground(Color.white); JLabel label = new JLabel("Test"); label.setForeground(Color.blue); label.setBackground(Color.lightGray); this.add(label); 

использование

 label.setOpaque(true); 

В противном случае фон не будет нарисован, так как по умолчанию opaque false для JLabel .

Из JavaDocs :

Если true, компонент рисует каждый пиксель в пределах своих границ. В противном случае компонент может не нарисовать некоторые или все его пиксели, позволяя отображаемым пикселям.

Для получения дополнительной информации прочитайте учебник Java « Как использовать ярлыки» .

По умолчанию фон JLabel прозрачен. Установите непрозрачность как true:

 label.setOpaque(true); 

Вы должны установить значение setOpaque (true) в true, иначе фон не будет окрашен в форму. Я думаю, что прочитав это, если он не установлен в true, он будет рисовать некоторые или не любые его пиксели в форме. Фон по умолчанию прозрачен, что кажется мне странным, по крайней мере, но по пути программирования вы должны установить его как true, как показано ниже.

  JLabel lb = new JLabel("Test"); lb.setBackground(Color.red); lb.setOpaque(true); <--This line of code must be set to true or otherwise the 

Из JavaDocs

setOpaque

 public void setOpaque(boolean isOpaque) If true the component paints every pixel within its bounds. Otherwise, the component may not paint some or all of its pixels, allowing the underlying pixels to show through. The default value of this property is false for JComponent. However, the default value for this property on most standard JComponent subclasses (such as JButton and JTree) is look-and-feel dependent. Parameters: isOpaque - true if this component should be opaque See Also: isOpaque() 

Для фона убедитесь, что вы импортировали java.awt.Color в свой пакет.

В main методе, то есть public static void main(String[] args) , вызовите уже импортированный метод:

 JLabel name_of_your_label=new JLabel("the title of your label"); name_of_your_label.setBackground(Color.the_color_you_wish); name_of_your_label.setOpaque(true); 

NB: настройка непрозрачности повлияет на ее видимость. Помните чувствительность к регистру в Java.

  • JButton ActionListener - обновление GUI только после нажатия JButton
  • Как изменить стиль стрелки в JComboBox
  • Заполнение jTable с использованием данных базы данных
  • Java-swing прослушивает действие в текстовом поле формы
  • В чем разница между Swing и AWT?
  • JFrame.dispose () vs System.exit ()
  • Сортировка строк по столбцам в JTable
  • Как подключить одну панель к другой
  • «Всегда поверх» Windows с Java
  • Java: разница между методами setPreferredSize () и setSize () в компонентах
  • Как я могу прослушивать нажатия клавиш (внутри Java Swing) для всех компонентов?
  • Давайте будем гением компьютера.