gpt4 book ai didi

java - 在java中绘制其他像素

转载 作者:行者123 更新时间:2023-12-01 13:32:07 24 4
gpt4 key购买 nike

我正在尝试绘制框架上的每个像素,但我无法弄清楚如何绘制下一个像素,它只显示绘制的一个像素,请帮助。我不知道如何实现这一点,有人会编辑此代码,以便它在相邻坐标中绘制像素。

import java.lang.*;
import java.util.*;
import java.util.List;
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;

public class MyDrawPixel extends Frame {

public Point mypoint = new Point();
public static void drawPixel(Graphics g, int x, int y, int size, Paint color)
{
Graphics2D ga = (Graphics2D)g;
Shape circle = new Ellipse2D.Float(x, y, size, size);
ga.setPaint(color);
ga.draw(circle);
ga.setPaint(color);
ga.fill(circle);
}

public void paint(Graphics g) {
Graphics2D ga = (Graphics2D)g;
drawPixel(g, mypoint.x, mypoint.y, 1, Color.black);
}


public static void main(String args[])
{

MyDrawPixel frame = new MyDrawPixel();
frame.mypoint.x = 43;
frame.mypoint.y = 43;
MyDrawPixel frame1 = new MyDrawPixel();
frame1.mypoint.x = 44;
frame1.mypoint.y = 44;
MyDrawPixel frame2 = new MyDrawPixel();
frame2.mypoint.x = 45;
frame2.mypoint.y = 45;
MyDrawPixel frame3 = new MyDrawPixel();
frame3.mypoint.x = 46;
frame3.mypoint.y = 46;
MyDrawPixel frame4 = new MyDrawPixel();
frame4.mypoint.x = 47;
frame4.mypoint.y = 47;

frame.addWindowListener(
new WindowAdapter()
{
public void windowClosing(WindowEvent we)
{
System.exit(0);
}
}
);

frame.setSize(400, 400);
frame.setVisible(true);
}
}

最佳答案

您正在创建 5 个框架,但仅显示一个。您需要做的是创建 1 帧并正确显示它。

您可以使用repaint()刷新屏幕,然后如果您想移动单个点,只需更改重绘之间的属性即可。

或者更好的是,找到一个关于自定义绘画的正确教程,你的代码非常糟糕。

关于java - 在java中绘制其他像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21513736/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com