Jmenulist を使用して Java コードを作成し、actionlistener で呼び出そうとしましたが、ActionListner が機能していません。別のコードで機能していますが、プログラムで問題が発生しています。
import javax.swing.*;
import java.awt.*;
import java.io.*;
import java.awt.event.*;
public class Submit {
public static void main(String[] args)
{
JFrame frame = new JFrame();
JMenuBar menuBar = new JMenuBar();
JMenu fileMenu = new JMenu("Graph");
JMenuItem closeMenuItem = new JMenu("Close");
closeMenuItem.addActionListener(new Close());
fileMenu.add(closeMenuItem);
menuBar.add(fileMenu);
frame.setJMenuBar(menuBar);
frame.setSize(500,500);
frame.setVisible(true);
}
}
class Close implements ActionListener {
public void actionPerformed(ActionEvent ev) {
System.out.println("Selected: ");
}}
私がそれに従うとき
public void actionPerformed(ActionEvent ev) {
System.out.println("Selected: ");
}
このセクションは機能していません。ほぼ同じコード
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package in.ac.iiitd.cse201.rachit11084.hw3.q2;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
class MenuActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
System.out.println("Selected: " + e.getActionCommand());
}
}
public class ContructMenuActionListener {
public static void main(final String args[]) {
JFrame frame = new JFrame("MenuSample Example");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JMenuBar menuBar = new JMenuBar();
JMenu fileMenu = new JMenu("File");
fileMenu.setMnemonic(KeyEvent.VK_F);
menuBar.add(fileMenu);
JMenuItem newMenuItem = new JMenuItem("New");
newMenuItem.addActionListener(new MenuActionListener());
fileMenu.add(newMenuItem);
frame.setJMenuBar(menuBar);
frame.setSize(350, 250);
frame.setVisible(true);
}
}
正常に動作しています。この問題を解決するにはどうすればよいですか?
ありがとう。