⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test.java

📁 java的一个小程序共给大家风箱 !
💻 JAVA
字号:
/*
编写三个弹出式菜单。要求:
如果按<Ctrl>键,点击鼠标右键弹出[字号]菜单。
如果按<Shift>键,点击鼠标右键弹出[命令]菜单。
否则,点击鼠标右键弹出[编辑]菜单。

其中字号里内容是
───────
字号菜单 
20号
30号
40号
50号
───────
其中命令里内容是
───────
命令菜单 
打开
保存
打印 
退出
───────
其中编辑里内容是
───────
编辑菜单 
复制
剪切 
粘贴
删除
───────
*/
import javax.swing.*;   //javax.swing.*这个包没有的话可以去网上找一下!
import java.awt.event.*;

class Test extends JFrame
/*
这里我用了J组件,J2中有,老师的机子如果支持就好了!
如果不支持,可以导入JAVAHOME.JAVA\lib文件!
除了J组件外其他的事件与方法都和老师讲的一样!
请老师指正!
*/	                       
{
	JPopupMenu p1,p2,p3;
	JMenuItem m11,m12,m13,m14,m21,m22,m23,m24,m31,m32,m33,m34;
	
	//boolean值表示 CTRL 键是否按下。
	private boolean isCtrlPressing=false;
	
	//boolean值表示 SHIFT 键是否按下。
	private boolean isShiftPressing=false;
	
	//构造方法,初始化本类。
	public Test()
	{
		ini();
		addKeyListener(new MyKeyListener());
		addMouseListener(new MyMouseListener());
		setTitle("菜单弹出事件");
		setSize(500,400);
		setVisible(true);
	}
	
	//初始化组件。
	public void ini()
	{
		p1=new JPopupMenu();
		p2=new JPopupMenu();
		p3=new JPopupMenu();
		
		m11=new JMenuItem("20号");
		m12=new JMenuItem("30号");
		m13=new JMenuItem("40号");
		m14=new JMenuItem("50号");
		
		m21=new JMenuItem("打开");
		m22=new JMenuItem("保存");
		m23=new JMenuItem("打印");
		m24=new JMenuItem("退出");
		
		m31=new JMenuItem("复制");
		m32=new JMenuItem("剪切");
		m33=new JMenuItem("粘贴");
		m34=new JMenuItem("删除");
		
		p1.add(new JLabel("字号菜单"));
		p1.addSeparator();
		p1.add(m11);
		p1.add(m12);
		p1.add(m13);
		p1.add(m14);
		
		p2.add(new JLabel("命令菜单"));
		p2.addSeparator();
		p2.add(m21);
		p2.add(m22);
		p2.add(m23);
		p2.add(m24);
		
		p3.add(new JLabel("编辑菜单"));
		p3.addSeparator();
		p3.add(m31);
		p3.add(m32);
		p3.add(m33);
		p3.add(m34);
	}
	
	public static void main(String args[])
	{
		Test test=new Test();
	}
	
	//键盘监听器。
	class MyKeyListener extends KeyAdapter
	{
		public MyKeyListener(){}
		
		public void keyPressed(KeyEvent e)
		{
			//Ctrl键按下。
			if(e.getKeyCode()==KeyEvent.VK_CONTROL)
			{
				isCtrlPressing=true;
			}
			//Shift键按下。
			if(e.getKeyCode()==KeyEvent.VK_SHIFT)
			{
				isShiftPressing=true;
			}
        }
    }
	//鼠标监听器。
	class MyMouseListener extends MouseAdapter
	{
		
		public MyMouseListener(){}
		
		//鼠标按下事件。
		public void mousePressed(MouseEvent e)
		{
			showWhich(e);
		}
		
		private void showWhich(MouseEvent e)
		{
			//鼠标右键按下。
			if(e.getButton()==MouseEvent.BUTTON3)
			{
			    if(isCtrlPressing)
			    {
				    p1.show(e.getComponent(),e.getX(),e.getY());
				    isCtrlPressing=false;
			    }
			    else if(isShiftPressing)
			    {
			        p2.show(e.getComponent(),e.getX(),e.getY());
			        isShiftPressing=false;
			    }
			    else
			    p3.show(e.getComponent(),e.getX(),e.getY());
		    }
		}
	}
}

⌨️ 快捷键说明

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