Java制作';点/像素';摆动/awt

Java制作';点/像素';摆动/awt,java,Java,我想知道如何在我的JFrame上的某个x,y坐标上制作点/像素 有人知道这方面的一些简单代码吗?简单性和实用性之间的最佳折衷方案可能是扩展JPanel,并覆盖paintComponent(图形)。然后将该面板放置在JFrame中(具有适当的布局。此处有一些使用说明:请参阅 void update(Graphics g) JFrame类的方法。 图形API(如绘制点、绘制线、绘制弧等)属于图形类 编辑:我创建了一个小示例程序: public class Test extends JFrame

我想知道如何在我的JFrame上的某个x,y坐标上制作点/像素


有人知道这方面的一些简单代码吗?

简单性和实用性之间的最佳折衷方案可能是扩展JPanel,并覆盖paintComponent(图形)。然后将该面板放置在JFrame中(具有适当的布局。此处有一些使用说明:

请参阅

void update(Graphics g) 
JFrame类的方法。 图形API(如绘制点、绘制线、绘制弧等)属于图形类


编辑:

我创建了一个小示例程序:

public class Test extends JFrame {

    public Test() {
        this.setPreferredSize(new Dimension(400, 400));
        this.pack();
        this.setVisible(true);
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
    }

    @Override
    public void paint(Graphics g) {
        super.paint(g);

        // define the position
        int locX = 200;
        int locY = 200;

        // draw a line (there is no drawPoint..)
        g.drawLine(locX, locY, locX, locY); 
    }

    public static void main(String[] args) {
        Test test = new Test(); 
    }
}
你也可以使用update或paintComponents方法,这会更好。但是你必须确保它被调用。如果你有问题,但它没有被调用,你可以使用以下解决方案:

问问你自己是否真的想扩展
JFrame
JPanel
。如果你决定不这样做然后,您可以创建一个基本的
JComponent
。根据您使用的布局管理器的不同,您可能会获得不同的成功

public class PixelComponent extends JComponent
{
    private Color color;

    public PixelComponent(Color color)
    {
        super();
        this.color = color;
    }

    public PixelComponent()
    {
        this(Color.BLACK);
    }

    public void paintComponent(Graphics g)
    {
        super.paintComponent(g);

        g.setColor(color);
        g.fillRect(0, 0, 1, 1);
    }
}

发送图形参考以及x轴和y轴以生成像素:

private void doPixel(图形g、int x、int y){
g、 fillRect(x,y,1,1);

}

非常好的小示例谢谢。我必须添加要运行的导入:import javax.swing.*;import java.awt.Graphics;import java.awt.Dimension;谢谢,您知道如何设置线/点/点的颜色吗?:)如何为双倍而不是整数设置颜色?