apopupmenu.java

来自「java教程中的一段源码」· Java 代码 · 共 95 行

JAVA
95
字号
//源文件名:aPopupMenu.java
//在下载源程序中的文件夹:0620弹出式菜单
import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class aPopupMenu  extends Applet implements ActionListener, WindowListener,ItemListener,MouseListener
{
    Frame f = new Frame("弹出式菜单的使用");
    CheckboxMenuItem chm;
    PopupMenu pm;
    public void init()
    {
        f.setSize(400,180);
        f.setLocation(200,200);
        f.setBackground(Color.lightGray);
        f.addWindowListener(this);
        f.addMouseListener(this);
        f.setVisible(true);
        pm = new PopupMenu("Popup");
        pm.add(new MenuItem("菜单项一"));
        chm=new CheckboxMenuItem("检测菜单项");
        pm.add(chm);
        pm.add(new MenuItem("菜单项二"));
        pm.add(new MenuItem("菜单项三"));
        pm.addSeparator();
        pm.add(new MenuItem("退出"));
        pm.addActionListener(this);
        chm.addItemListener(this);
        f.add(pm);
    }

    public void windowClosing(WindowEvent e)
    {
        f.setVisible(false);
    }
    public void windowOpened(WindowEvent e)
    {
    }
    public void windowIconified(WindowEvent e)
    {
    }
    public void windowDeiconified(WindowEvent e)
    {
    }
    public void windowClosed(WindowEvent e)
    {
    }
    public void windowActivated(WindowEvent e)
    {
    }
    public void windowLostFocus(WindowEvent e)
    {
    }
    public void windowStateChanged(WindowEvent e)
    {
    }
    public void windowDeactivated(WindowEvent e)
    {
    }

    public void actionPerformed(ActionEvent e)
    {
        if(e.getActionCommand()=="退出")
        f.setVisible(false);
        else
        f.setTitle("选择的是:"+e.getActionCommand());
    }

    public void mouseClicked(MouseEvent mec)
    {
        if (mec.getModifiers()==mec.BUTTON3_MASK)
        pm.show(f,mec.getX(),mec.getY());
    }
    public void mousePressed(MouseEvent mep)
    {
    }
    public void mouseReleased(MouseEvent mer)
    {
    }
    public void mouseEntered(MouseEvent mee)
    {
    }
    public void mouseExited(MouseEvent mex)
    {
    }
    public void mouseDragged(MouseEvent med)
    {
    }
    public void itemStateChanged(ItemEvent e)
    {
        f.setTitle("选择的是:"+(chm.getState()?"√":"")+chm.getLabel());
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?