Как получить цвет фона JButton по умолчанию?

Я использую это myButton.setBackground(myColor) изменить JButton цвет фона для моего цвета, как найти его исходный цвет фона по умолчанию, чтобы я мог изменить его обратно? Я знаю, что могу сохранить его цвет фона по умолчанию, прежде чем изменить и использовать его, но мне интересно, хранит ли его где-нибудь Java, так что, возможно, я могу вызвать что-то вроде: myButton.getClass.getDefaultBackground() чтобы вернуть его?

7 ответов

btn.setBackground(new JButton().getBackground());

как насчет этого... он получит цвет кнопки по умолчанию

myButton.setBackground(null)

изменяет его обратно на цвет по умолчанию.

Это может помочь:

http://java.sun.com/j2se/1.5.0/docs/api/java/awt/SystemColor.html

Toolkit.getDesktopProperty(java.lang.String)
Toolkit.getDesktopProperty("control");
// control - The color rendered for the background of control panels and control objects, such as pushbuttons.

Работает как с:

button.setBackground(null);

а также

button.setBackground(new JButton().getBackground());

(когда вы создаете новый JButton, его цвет фона инициализируется как нулевой цвет)
Итак, выберите тот, который вы считаете лучшим для вашего проекта

   Color cbt= jButton6.getBackground();

        String color_button=cbt.getRed()+","+cbt.getGreen()+","+cbt.getBlue();

если вы не получите цветную кнопку RGB, попробуйте этот код

  1. сделать новую кнопку "дБ"
  2. сделать новый тип переменной Color "JBB"
  3. т.е. - цвет jbb = db.getBackground();

теперь цвет фона по умолчанию хранится в Color jbb, который теперь можно использовать в качестве цвета, который вы хотите найти / использовать

Не пытайтесь получить фон из Jframe или других элементов, чтобы применить его к кнопке; если вы уже изменили это, сделайте это:

ElementToStyle.setBackground(null);
Другие вопросы по тегам