【发布时间】:2013-10-13 06:29:41
【问题描述】:
最近我开始编写一些 Java 2D 代码。
我做了这个:
public void paintComponent(Graphics comp) {
Graphics2D comp2D = (Graphics2D) comp;
Font fontx = new Font("Verdana", Font.BOLD, 5);
comp2D.setFont(fontx);
comp2D.drawString("Hello World!", 5, 50);
}
我确实导入了 JFrame 和 java.awt.*,但还是有问题。
当我运行它时,我得到了这个:
Exception in thread "main" java.lang.NullPointerException
at game.Game.paintComponent(Game.java:41) - comp2D.setFont(fontx); - Sets Font
at game.Game.next(Game.java:36) - paintComponent(null); - calls the paintComponent public void from the next() public void
at game.Game.main(Game.java:26) - next.next(); - calls a public void called "next" using an object called "next" (this public void throws InterruptedException)
Java Result: 1
我该如何解决?
【问题讨论】:
-
与任何 NPE 一样,关键信息是引发异常的行。那么,哪一行会抛出你的 NPE (NullPointerException)?
-
我该如何解决? 1. 调试您的代码或 2. 发布 SSCCE,简短、可运行、compilabel 生成上午异常
-
使用特定行更新了 OP。请再次检查。
-
您是否手动调用paintComponent?听起来你在 paintComponent 方法上做错了什么。
-
我用“paintComponent(null);”来称呼它从下一个()公共无效。
标签: java swing import jframe 2d