⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 roundbutton.java

📁 java2的应用软件
💻 JAVA
字号:
import javax.swing.*;
import java.awt.*;
import java.awt.geom.*;
import java.net.*;

public class  RoundButton extends JButton
{
   public RoundButton(String label)
	{
	   super(label);
	   Dimension size=getPreferredSize();
	   setPreferredSize(size);
	   setContentAreaFilled(false);
	}
	protected void paintComponent(Graphics g)
	{
		if(getModel().isArmed())
		{
			 g.setColor(Color.lightGray);
		}
		else
		{
			g.setColor(getBackground());
		}
		g.fillOval(0,0,getSize().width-1,getSize().height-1);
		super.paintComponent(g);
	}
	protected void paintBorder(Graphics g)
	{
		g.setColor(getForeground());
		g.drawOval(0,0,getSize().width-1,getSize().height-1);
	}
	Shape shape;
	public boolean contains(int x,int y)
	{
		 if(shape==null||!shape.getBounds().equals(getBounds()))
		{
			 shape=new Ellipse2D.Float(0,0,getWidth(),getHeight());
		}
    return shape.contains(x,y);
	}
	public static void main(String[] args)
	{
		JButton button=new RoundButton("圆形按钮");
        JButton b2;
        ImageIcon ic;
		button.setBackground(Color.green);
		ic=new ImageIcon("Red.GIF");
		b2=new JButton(ic);
		JFrame frame=new JFrame();
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.getContentPane().setBackground(Color.yellow);
		frame.getContentPane().add(button);
		frame.getContentPane().setLayout(new FlowLayout());
		frame.getContentPane().add(b2);
		frame.setSize(300,200);
		frame.setVisible(true);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -