Graphics如何绘制一个长方形,并且填充颜色,并且在这个长方形上写字
时间: 2024-04-14 09:29:34 浏览: 139
要使用Graphics对象绘制一个长方形并填充颜色,并在长方形上写字,可以使用Java的Graphics2D类的方法。下面是一个示例代码:
```java
import javax.swing.*;
import java.awt.*;
public class FilledRectangleWithTextExample extends JFrame {
public FilledRectangleWithTextExample() {
setTitle("Filled Rectangle with Text Example");
setSize(400, 400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
}
public void paint(Graphics g) {
super.paint(g);
Graphics2D g2d = (Graphics2D) g;
// 设置长方形的位置和尺寸
int x = 50;
int y = 50;
int width = 200;
int height = 100;
// 设置填充颜色
g2d.setColor(Color.RED);
// 绘制填充长方形
g2d.fillRect(x, y, width, height);
// 设置文本颜色和字体
g2d.setColor(Color.WHITE);
Font font = new Font("Arial", Font.BOLD, 20);
g2d.setFont(font);
// 在长方形上写字
String text = "Hello, World!";
int textX = x + (width - g2d.getFontMetrics().stringWidth(text)) / 2;
int textY = y + (height + g2d.getFontMetrics().getHeight()) / 2;
g2d.drawString(text, textX, textY);
}
public static void main(String[] args) {
EventQueue.invokeLater(() -> {
FilledRectangleWithTextExample example = new FilledRectangleWithTextExample();
example.setVisible(true);
});
}
}
```
在上述示例中,我们首先绘制了一个填充长方形,然后设置了文本的颜色和字体。接下来,我们计算出使文本居中显示在长方形上的位置,并使用`drawString()`方法将文本绘制在长方形上。
你可以根据需要修改长方形的位置、尺寸、填充颜色和文本内容。将代码保存为Java文件后编译运行,即可看到绘制出的带有填充颜色和文本的长方形窗口。
阅读全文