Как получить цвет фона JButton по умолчанию? - PullRequest
7 голосов
/ 31 августа 2009

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

Ответы [ 7 ]

11 голосов
/ 09 мая 2014

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

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

8 голосов
/ 19 декабря 2012
myButton.setBackground(null)

меняет цвет на стандартный.

3 голосов
/ 31 августа 2009

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

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.
0 голосов
/ 27 января 2019

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

button.setBackground(null);

и

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

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

0 голосов
/ 09 июля 2018
   Color cbt= jButton6.getBackground();

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

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

0 голосов
/ 05 апреля 2015
  1. сделать новую кнопку "дБ"
  2. сделать новый тип переменной Color "jbb"
  3. т.е. - Цвет jbb = db.getBackground ();

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

0 голосов
/ 05 декабря 2014

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

ElementToStyle.setBackground(null);
...