JButton全局设置

时间:2016-02-27 12:11:55

标签: java jbutton

所以我在我的应用程序中创建了多个JButton。现在我想修改他们的设计,比如,改变颜色,大小,样式等。有没有办法避免必须将这些东西分别设置到每个JButton?

1 个答案:

答案 0 :(得分:0)

扩展JButton的自定义类

如前所述,您可以使用扩展JButton的自定义类来更改按钮的样式,然后从此自定义类创建实例。

一个例子:

import javax.swing.*;
import java.awt.*;

public class CustomJButton extends JButton
{
   private Font font = new Font("MS UI Gothic", Font.BOLD, 30);;

   public CustomJButton(String buttonName)
   {
      this.setText(buttonName);
      this.setFont(font);
      this.setForeground(Color.BLUE);
   }
}

然后在主类中创建此类的实例,如下所示:

.
.
  CustomJButton button = new CustomJButton("Click Me");
.
.

你有结果:

enter image description here

替代解决方案

您可以使用Font对象来声明“全局”设置。

一个例子:

Font font = new Font("MS UI Gothic", Font.BOLD, 30);

我们假设您拥有以下jButtonsjButton1jButton2

jButton1.setFont(font);
jButton2.setFont(font);

从上面的链接中可以看出font类不包含颜色属性,遗憾的是,这是一个简单的修复方法,即声明一个全局Color对象可以说:{{1您可以在以后用于将颜色设置为所有按钮。

当您想要更改按钮的颜色时,这非常有用,您只需更改一行代码,就会影响所有按钮。

结论

这两种解决方案都可以解决您的问题,但在我看来,实现扩展Color colorButton = Color.BLUE的自定义类是可行的方法,因为您的代码看起来非常清晰明了。