java如何改变按钮的颜色,不是背景的颜色

如题所述

setForeground() 设置前景/字体颜色
setBackground() 设置背景颜色
具体实现:(假设按钮名称为:button)
设置红字:
button.setForeground(Color.red);
设置黑色背影:
button.setBackground(Color.black);
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-07-13
这是我做的一个改变形状和颜色的Button
package FrameDemo;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.geom.Ellipse2D;
import javax.swing.JButton;
import javax.swing.JFrame;
public class ButtonChanged1 extends JButton{
private int x = 200;
private int y = 200;
private int width = 50;
private int height = 50;
private JFrame frm = new JFrame("变化的按钮");
public ButtonChanged1()
{
frm.setVisible(true);
frm.setBounds(300, 200, 500, 500);
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frm.add(this);
setOpaque(false);
setBorderPainted(false);
setContentAreaFilled(false);//取消了button的外框
setFocusable(false);//取消了文字框
addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println("Hello");
}
});
}
public void paintComponent(Graphics g)
{
Graphics2D g2 = (Graphics2D) g;
g2.setColor(Color.pink);
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g2.fill(getShape());
super.paintComponent(g);
}
public Ellipse2D getShape()
{
return new Ellipse2D.Double(x,y,width,height);
}
public static void main(String[] args)
{
ButtonChanged1 bChanged1 = new ButtonChanged1();
}
}
第2个回答  2018-02-24
变形就可以了
第3个回答  2011-03-20
b1.setBackground(Color.red);本回答被提问者采纳
第4个回答  2011-03-20
这种东西你查查java文档,里面都能找到的
相似回答