java - 自定义绘制 AWT 组件

标签 java awt paint

我正在尝试使用 java.awt.Graphics 在其 java.awt.Component.getGraphics() 上绘制的一系列线条来对 AWT 组件产生渐变效果。 drawLine() 方法,但这永远不会保持绘制状态。有谁知道如何将这些图形提交给组件,以便它们在调整大小和调用重绘的其他事件中保持不变?

最佳答案

您是否仅限于 AWT 组件?如果不是,我建议您使用 Swing 组件(以 “J” 开头的组件)。对于自定义绘画,您可以覆盖 paintComponent 方法,例如:

import java.awt.Graphics;

import javax.swing.JPanel;

public class CustomPaintingComponent extends JPanel
{
    @Override
    protected void paintComponent(Graphics g)
    {
        super.paintComponent(g);    // This will clear everything...

        // ... now you can apply your custom painting, for example:
        g.drawLine(10, 10, getWidth() - 10, getHeight() - 10);  // A line from upper left to lower right corner
    }
}

关于java - 自定义绘制 AWT 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5110929/

相关文章:

java - 在java Draw中扩散颜色

java - 图形 g - 使用绘画,如何删除内容?

java - 为什么更换内面板时会出现闪烁?

Java GUI 类按钮面板

Java,在最后一个图像结束的同一点重绘滚动背景图像

java - 插入排序 - 无效的方法声明

java - 如何在 Java 中创建 Web 服务(使用 Eclipse)

java - hibernate 在 View 中打开 session

java - 使用 s3 复制失败且访问被拒绝

java - Java (Swing) 中的 GUI 体系​​结构和设计