如何创建新菜单项并调用所选代码

时间:2017-12-01 19:21:04

标签: java object menuitem bluej

为项目imageviewer1-0创建一个名为blur的新菜单项。选择菜单中的项目时,需要调用makeBlur方法的代码。

这就是我现在所拥有的。我不知道如何调用makeblur方法,以便在选择菜单项时运行它。

private void makeBlur()
{
if(currentImage != null) {

// Create the kernel.
float filter[] = { 0.1111f, 0.1111f, 0.1111f,
0.1111f, 0.1111f, 0.1111f,
0.1111f, 0.1111f, 0.1111f };
Kernel kernel = new Kernel(3, 3, filter);
ConvolveOp op = new ConvolveOp(kernel);
// Create the convolve operation.

BufferedImage img = op.filter(currentImage, null);
currentImage = new OFImage(img);
imagePanel.clearImage();
imagePanel.setImage(currentImage);
frame.repaint();
showStatus("Applied: blur");
}
else {
showStatus("No image loaded.");

public void actionPerformed(ActionEvent event)
{
System.out.println("Menu item: " + event.getActionCommand());
}


private void makeFrame() 
frame = new JFrame("ImageViewer"); 
makeMenuBar(Frame);




private void makeMenuBar(JFrame frame) 

JMenuBar();
frame.setJmenuBar(menubar);

Jmenu fileMenu = new Jmenu("File"); 
menubar.add(fileMenu);

JMenuItem openItem = JMenuItem("Open"); 
openItem.addActionListener(this); 
fileMenu.add(openItem); 
}
}

1 个答案:

答案 0 :(得分:0)

您可以执行以下操作

JMenuItem blur = new JMenuItem();
        blur.setText("Blur");
        blur.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                makeBlur();
            }
        });
        menubar.add(blur);