Java 为什么将图标添加到JMenuItem时应用程序不显示?

Java 为什么将图标添加到JMenuItem时应用程序不显示?,java,Java,最近我遇到了一个问题,我试图使用一个JMenuItems图标,当我定义并指向该图标时,应用程序本身不会启动/显示。 我开始寻找错误,但没有错误;开始查找写入事件,通常在我添加图标时会出现,之后应用程序不会启动/显示。 当图标已设置但已注释时: 代码 mntmMaximize = new JMenuItem(); mntmMaximize.setText("Maximize Window"); mntmMaximize.setActionCommand("maximize


最近我遇到了一个问题,我试图使用一个JMenuItems图标,当我定义并指向该图标时,应用程序本身不会启动/显示。
我开始寻找错误,但没有错误;开始查找写入事件,通常在我添加图标时会出现,之后应用程序不会启动/显示。


当图标已设置但已注释时:
代码

    mntmMaximize = new JMenuItem();
    mntmMaximize.setText("Maximize Window");
    mntmMaximize.setActionCommand("maximize");
    mntmMaximize.addActionListener(this);
    mntmMaximize.setMnemonic(KeyEvent.VK_PLUS);
    mntmMaximize.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_PLUS, ActionEvent.CTRL_MASK));
    // mntmMaximize.setIcon(new ImageIcon(Vision.class.getResource("xray/fullscreen16x.png")));
    mnWindow.add(mntmMaximize);<br>
mntmMaximize=newjmenuitem();
mntmMaximize.setText(“最大化窗口”);
mntmMaximize.setActionCommand(“最大化”);
mntmMaximize.addActionListener(此);
mntmMaximize.setMnemonic(KeyEvent.VK_PLUS);
mntmMaximize.setAccelerator(击键.getKeyStroke(KeyEvent.VK_PLUS,ActionEvent.CTRL_掩码));
//mntmMaximize.setIcon(新的ImageIcon(Vision.class.getResource(“xray/fullscreen16x.png”));
mnWindow.add(mntmMaximize)
图片:

设置图标并尝试执行应用程序后:
代码:

    mntmMaximize = new JMenuItem();
    mntmMaximize.setText("Maximize Window");
    mntmMaximize.setActionCommand("maximize");
    mntmMaximize.addActionListener(this);
    mntmMaximize.setMnemonic(KeyEvent.VK_PLUS);
    mntmMaximize.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_PLUS, ActionEvent.CTRL_MASK));
    mntmMaximize.setIcon(new ImageIcon(Vision.class.getResource("xray/fullscreen16x.png")));
    mnWindow.add(mntmMaximize);<br>
mntmMaximize=newjmenuitem();
mntmMaximize.setText(“最大化窗口”);
mntmMaximize.setActionCommand(“最大化”);
mntmMaximize.addActionListener(此);
mntmMaximize.setMnemonic(KeyEvent.VK_PLUS);
mntmMaximize.setAccelerator(击键.getKeyStroke(KeyEvent.VK_PLUS,ActionEvent.CTRL_掩码));
mntmMaximize.setIcon(新的ImageIcon(Vision.class.getResource(“xray/fullscreen16x.png”));
mnWindow.add(mntmMaximize)
图片:
请注意,如果未在此图片中创建窗口,则应用程序将因此终止。

请尽量回答nice,如果您需要完整的源文件,则可以。

编辑:

如果需要,我还可以制作一个视频,在启动应用程序时显示图标设置但未注释。

getResource
使用包(文件夹)的相对路径,如中所示

或类似于:

Vision.class.getResource("/xray/fullscreen16x.png")

这是有道理的,因为我总是忘记一些东西来设置代码和图标
Vision.class.getResource("/xray/fullscreen16x.png")