嘿,当我试图在paintComponent中使用图形对象时,我得到了一个NullPointerException,但我不知道为什么。它仍然绘制我想要的一次,但在那之后,它抛出异常。下面是代码
public class RacePanel extends JPanel implements MouseListener, ActionListener
{
private static final int PANEL_WIDTH = 640;
private static final int PANEL_HEIGHT = 400;
private Timer time;
boolean first
我想创建一个在线绘图工具,如 by sketch io,我已经有了创建简单线条的基础知识。
var colorPurple = "#cb3594";
var colorGreen = "#659b41";
var colorYellow = "#ffcf33";
var colorBrown = "#986928";
var curColor = colorPurple;
var clickColor = new Array();
function addClick(x, y, dragging)
我正在尝试创建一个窗口框架来显示游戏窗口。我在GameWindow类中扩展了JFrame,并创建了两个方法:drawBackground和drawGrid,前者使用实心矩形填充屏幕,后者使用for循环绘制连续的线条以形成网格。这是我的代码。 public class GameWindow extends JFrame {
// instance variables, etc.
public GameWindow(int width, Color bgColor) {
super();
// ...
this.setVis
我在想,如果程序中发生了某种事情,我如何调用包含Graphics G的函数。
public void dead (Graphics g) {
right = false;
left = false;
up = false;
down = false;
dead = true;
score = 0;
moves = 0;
g.setColor(Color.WHITE);
g.setFont(new Font("arial", Font.BOLD, 50));
g.drawString("Gam
从根本上说,我在绘制我制作的定制组件时遇到了问题。每当调用frame ()时,都会调用Button类的paintComponent(),但是在我的框架中没有显示任何内容。我还知道组件的大小是正确的,并且位于正确的位置,因为我设置了一个边框来检查这一点。
以下是我的自定义组件类:
public class Button extends JComponent {
protected static final Color BUTTON_COLOR = Color.black;
protected Point position;
protected Dimension size;
public B
我试图在JPanel中绘制动画,方法是将所有帧显示为BufferedImage对象,并使用Thread为每个帧调用JPanel的paintComponent(Graphics g)方法中的g.drawImage,并在此之间休眠。我的理解是从任何地方调用g.drawImage,只要g是来自paintComponent的Graphics对象,就应该导致JPanel中的像素被更新,但是JPanel中没有变化。这不是Graphics.drawImage的工作方式吗,还是使用另一个Thread或其他所有的东西都有问题?下面是我代码的简写版本,删除了不必要的位。
class Example extends
public void actionPerformed(ActionEvent e)
{
try
{
//récupérer les coordonnées(x,y) du text area
int x=Integer.parseInt(f.x.getText());
int y=Integer.parseInt(f.y.getText());
int puissance=Integer.parseInt(f.p.getText());
f.APs.add(new AccessPoint (x,y,f.APs.size