java圆形按键
时间: 2023-10-11 14:18:45 浏览: 133
要实现圆形按键,你可以创建一个继承自JButton的新类,并在其 `paintComponent()` 方法中绘制一个圆形。以下是一个简单的示例代码:
```java
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.Ellipse2D;
import javax.swing.JButton;
public class CircularButton extends JButton {
public CircularButton(String text) {
super(text);
setPreferredSize(new Dimension(50, 50));
}
protected void paintComponent(Graphics g) {
Graphics2D g2 = (Graphics2D) g;
g2.setColor(getBackground());
g2.fill(new Ellipse2D.Double(0, 0, getWidth(), getHeight()));
super.paintComponent(g);
}
public void setBackground(Color bg) {
super.setBackground(bg);
repaint();
}
}
```
在构造函数中,我们设置了按钮的首选大小。在 `paintComponent()` 方法中,我们绘制了一个圆形,其大小与按钮相同。然后调用了父类的 `paintComponent()` 方法,以绘制按钮文本和其他内容。
注意,我们还覆盖了 `setBackground()` 方法,以便在背景色更改时重新绘制按钮。这是因为,在圆形按钮中,背景色占据了整个按钮的区域,而不仅仅是边框。
阅读全文