如何修复Jlabel按钮?

时间:2019-07-02 23:47:16

标签: java swing nullpointerexception jbutton jlabel

我的作业有问题。我使一个按钮使用jlabel。对不起,我的英语不好,因为英语不是我的母语。我得到结果:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at javax.swing.ImageIcon.<init>(ImageIcon.java:217)
    at app.menu.initComponents(menu.java:37)
    at app.menu.<init>(menu.java:17)
    at app.menu.lambda$main$0(menu.java:136)
    at app.menu$$Lambda$13/22220042.run(Unknown Source)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:749)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:702)
    at java.awt.EventQueue$3.run(EventQueue.java:696)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:719)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

我编写的代码:

package app;

import java.awt.Color;
import java.awt.Toolkit;
import javax.swing.ImageIcon;

public class menu extends javax.swing.JFrame {


    public menu() {
        initComponents();
        this.setBackground(new Color(0,0,0,0)); 

    }

首先,当它仅带有此代码的jlabel时,它可以运行并且我的按钮退出成功。

           private void btn_exitMouseClicked(java.awt.event.MouseEvent evt) {                                      
        this.dispose(); 
    }           

接下来,我使用此图像图标,但在线程“ AWT-EventQueue-0” java.lang.NullPointerException中得到异常。



    private void btn_exitMouseEntered(java.awt.event.MouseEvent evt) {                                      
     ImageIcon A= new ImageIcon(getClass().getResource("images/btn_close.png"));
     btn_exit.setIcon(A);
    }                                     

    private void btn_exitMouseExited(java.awt.event.MouseEvent evt) {                                     
        ImageIcon B = new ImageIcon(getClass().getResource("images/btn_clos.png"));
         btn_exit.setIcon(B);
    }                                    

    private void btn_exitMousePressed(java.awt.event.MouseEvent evt) {                                      
      ImageIcon A = new ImageIcon(getClass().getResource("images/close.png"));
        btn_exit.setIcon(A);
    }                                     

    private void btn_exitMouseReleased(java.awt.event.MouseEvent evt) {                                       
       ImageIcon A = new ImageIcon(getClass().getResource("images/btn_clos.png"));
         btn_exit.setIcon(A);
    }                                      

0 个答案:

没有答案