gpt4 book ai didi

Java-如何在屏幕上绘制像素

转载 作者:太空宇宙 更新时间:2023-11-04 14:00:20 25 4
gpt4 key购买 nike

在 Java 中简单地将像素打印到屏幕上的最佳方法是什么,无论是通过简单的循环还是数组?

最佳答案

您可以使用 BufferedImage 并将其显示在 JLabel 上。像这样的东西:

import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import java.util.List;
import javax.swing.*;

public class SSCCE extends JPanel
{
public SSCCE()
{
int size = 300;
BufferedImage bi = new BufferedImage(size, size, BufferedImage.TYPE_INT_RGB);
ImageIcon icon = new ImageIcon( bi );
add( new JLabel(icon) );

for (int y = 0; y < size; y += 5)
{
for (int x = 0; x < size; x++)
{
Color color = (y % 2 == 0) ? Color.RED : Color.GREEN;
int colorValue = color.getRGB();
bi.setRGB(x, y, colorValue);
bi.setRGB(x, y + 1, colorValue);
bi.setRGB(x, y + 2, colorValue);
bi.setRGB(x, y + 3, colorValue);
bi.setRGB(x, y + 4, colorValue);
}
}
}

private static void createAndShowGUI()
{
JFrame frame = new JFrame("SSCCE");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add( new SSCCE() );
frame.setLocationByPlatform( true );
frame.pack();
frame.setVisible( true );
}

public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
createAndShowGUI();
}
});
}
}

或者您可以创建自定义组件并使用 Graphics 类中的方法实现 paintComponent(...) 方法:

Graphics.fillRect(...);
Graphics.fillOval(...);
etc..

阅读 Swing 教程中关于 Custom Painting 的部分了解更多信息和示例以帮助您入门。不要忘记阅读 Graphics API 了解其他 Graphics 方法。

关于Java-如何在屏幕上绘制像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29353136/

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