java那位大神告诉我为什么我用这个画图会报错??
那位大神来解答一下,谢谢!!!
编译无错误,图片放置位置正确,运行时出现以下内容,并没有显示图片,只显示了窗体。
Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException
at java.desktop/sun.awt.SunToolkit.getImageFromHash(SunToolkit.java:653)
at java.desktop/sun.awt.SunToolkit.getImage(SunToolkit.java:689)
at com.day1.MyPanel.paint(Picture_1.java:71)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1083)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1083)
at java.desktop/javax.swing.JLayeredPane.paint(JLayeredPane.java:590)
at java.desktop/javax.swing.JComponent.paintChildren(JComponent.java:907)
at java.desktop/javax.swing.JComponent.paintToOffscreen(JComponent.java:5262)
at java.desktop/javax.swing.RepaintManagerPaintManager.paintDoubleBufferedImpl(RepaintManager.java:1643)atjava.desktop/javax.swing.RepaintManagerPaintManager.paintDoubleBufferedImpl(RepaintManager.java:1643)
at java.desktop/javax.swing.RepaintManagerPaintManager.paintDoubleBufferedImpl(RepaintManager.java:1643)atjava.desktop/javax.swing.RepaintManagerPaintManager.paintDoubleBuffered(RepaintManager.java:1618)
at java.desktop/javax.swing.RepaintManagerPaintManager.paint(RepaintManager.java:1556)atjava.desktop/javax.swing.RepaintManager.paint(RepaintManager.java:1323)atjava.desktop/javax.swing.JComponent.paint(JComponent.java:1060)atjava.desktop/java.awt.GraphicsCallbackPaintManager.paint(RepaintManager.java:1556)
at java.desktop/javax.swing.RepaintManager.paint(RepaintManager.java:1323)
at java.desktop/javax.swing.JComponent.paint(JComponent.java:1060)
at java.desktop/java.awt.GraphicsCallbackPaintManager.paint(RepaintManager.java:1556)atjava.desktop/javax.swing.RepaintManager.paint(RepaintManager.java:1323)atjava.desktop/javax.swing.JComponent.paint(JComponent.java:1060)atjava.desktop/java.awt.GraphicsCallbackPaintCallback.run(GraphicsCallback.java:39)
at java.desktop/sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:78)
at java.desktop/sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:115)
at java.desktop/java.awt.Container.paint(Container.java:2002)
at java.desktop/java.awt.Window.paint(Window.java:3926)
at java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:876)
at java.desktop/javax.swing.RepaintManager4.run(RepaintManager.java:848)atjava.base/java.security.AccessController.doPrivileged(AccessController.java:389)atjava.base/java.security.ProtectionDomain4.run(RepaintManager.java:848)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
at java.base/java.security.ProtectionDomain4.run(RepaintManager.java:848)atjava.base/java.security.AccessController.doPrivileged(AccessController.java:389)atjava.base/java.security.ProtectionDomainJavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:848)
at java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:823)
at java.desktop/javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:772)
at java.desktop/javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1884)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.desktop/java.awt.EventQueue4.run(EventQueue.java:715)atjava.base/java.security.AccessController.doPrivileged(AccessController.java:389)atjava.base/java.security.ProtectionDomain4.run(EventQueue.java:715)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
at java.base/java.security.ProtectionDomain4.run(EventQueue.java:715)atjava.base/java.security.AccessController.doPrivileged(AccessController.java:389)atjava.base/java.security.ProtectionDomainJavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
package com.day1; import java.awt.*; import javax.swing.*; public class Picture_1 extends JFrame{ MyPanel mp=null;//创建mypanel public static void main(String[] args) { Picture_1 pt=new Picture_1();//创建并初始化picture_1,将自动调用paint方法。 } public Picture_1() { mp=new MyPanel();//初始化panel this.add(mp);//加入JFrame this.setSize(600,300);//JFrame尺寸 this.setTitle("画图片");//标题 //关闭时关闭虚拟机 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true);//显示窗体 //this.setLocation(200,200);//窗体初始位置 //this.setResizable(false);//不能改变大小 } } class MyPanel extends JPanel//创建一个MyPanel类,继承JPanel { //Graphics是绘图的重要类,它可以理解成一支画笔,用它画图按 public void paint(Graphics g)//覆盖JPanel的paint方法 { super.paint(g);//调用父类函数,完成初始化,这句话不能少 //画一个图片, Image im=Toolkit.getDefaultToolkit().getImage (Panel.class.getResource("/j0384862.jpg")); //实现图片 g.drawImage(im, 10, 10, 100 , 150, this); } }
- 为什么我安装不了java语言这个软件“java_ee_sdk-7-jdk7-windows-x64-ml.exe”
- 你知道为什么考你这个?——Java面试题及答案汇总分析(1)
- 你知道为什么考你这个?——Java面试题及答案汇总分析(5)
- 为什么我这个 Java 死忠倒向了 Node.js?
- java中为什么需要public static void main(String[] args)这个方法
- Java那位大神帮我看看代码哪里出错了?
- Java影响力远超想像--为什么要采用java这个平台
- 请电脑大神来看看我的输入法输入问题,按了U,I,O,P,J,K,L,M这些键为什么不是UIOPJK 这个是某些笔记本的设定,
- 请教一下,http请求彩信数据,抓包返回的协议是MMSE/SMIL协议,现在想模拟彩信服务器返回,java,请问有大神知道这个MMSE协议该怎么构建么?
- JAVA请求大神指教在for循环里面进行查询操作反应特别慢,有什么优化吗?这个查询又必须要
- 你知道为什么考你这个?——Java面试题及答案汇总分析(4)
- 求助Java 为什么 public void paint(Graphics g)方法画不出来 无法画出来定义的图形 求大神解析
- 为什么Java这个语言没有在基础应用领域发挥优势?
- java语言String这个神奇的类为什么是final
- java 学习笔记--Comparator中为什么其他类实现这个接口为什么没有复写equals(Object obj)这个方法?
- 7年腾讯大神告诉Java新手必学的21个技术点
- Java 把对象作为参数传到一个方法里,这个是值传递还是引用传递, 为什么结果这么怪?
- 为什么要采用java这个平台?
- Java影响力远超想像--为什么要采用java这个平台
- 为什么Java这个语言没有在基础应用领域发挥优势?