导航:首页 > 编程语言 > java怎么实现右键菜单

java怎么实现右键菜单

发布时间:2023-08-24 02:53:01

A. 如何在java中实现右键弹出式菜单

public
void
mouseReleased(MouseEvent
e)
{
if(e.getButton()
==
MouseEvent.BUTTON3)//点击右键
popUpMenu.show(editMenu,
e.getX(),
e.getY());
//popUpMenu是一个JPopupMenu
editMenu是一个JMenu
//e.getX(),
e.getY()是获得鼠标点击的坐标
在点击的地方回弹出一个
editMenu,editMenu中的
内容自己答添加
}
public
void
mouseClicked(MouseEvent
e)
{
if(e.getButton()
==
MouseEvent.BUTTON1)//点击鼠标左键
popUpMenu.setVisible(false);//弹出菜单消失
}

B. java文本域中怎么添加鼠标右键单击事件

处理鼠标右键

public mouseClicked(MouseEvent e){

if(e.isMetaDown()){//检测鼠标右键单击

}

鼠标处理事件写到那个里边就行了

C. java中控制鼠标点击的方法

//利用 java.awt.Robot 类来自动完成一些键盘或鼠标的动作,下面是一个小例子
//程序流程:模拟鼠标左键点击 开始-->运行-->CMD-->DIR-->CLS-->EXIT
//模拟右键点击 移动到右下角-->右键点击-->调整日期和时间-->退出
import java.awt.*;
import java.awt.event.*;
import javax.swing.JOptionPane;

//Test.java
public class Test {
public static void main(String[] args) throws Exception {
final Robot rb = new Robot();
new Thread(){
public void run(){
rb.delay(2000);
//回车
rb.keyPress(KeyEvent.VK_ENTER);
rb.keyRelease(KeyEvent.VK_ENTER);
}
}.start();
JOptionPane.showMessageDialog(null,"以下程序自动执行,包括本对话框,请不必进行人为干预.\n如果不能正常执行程序,请先关闭输入法");

//设置开始菜单的大概位置
int x = 40;
int y = Toolkit.getDefaultToolkit().getScreenSize().height-10;

//鼠标移动到开始菜单,
rb.mouseMove(x,y);
rb.delay(500);

//单击三次开始菜单
for(int i=0; i<3; i++)
pressMouse(rb,InputEvent.BUTTON1_MASK,500);
rb.delay(1000);

//运行CMD命令 r cmd enter
int[] ks = {KeyEvent.VK_R,KeyEvent.VK_C,KeyEvent.VK_M,KeyEvent.VK_D,KeyEvent.VK_ENTER,};
pressKeys(rb,ks,500);
rb.mouseMove(400,400);
rb.delay(500);
//运行DIR命令 dir enter
ks = new int[]{KeyEvent.VK_D,KeyEvent.VK_I,KeyEvent.VK_R,KeyEvent.VK_ENTER};
pressKeys(rb,ks,500);
rb.delay(1000);
//运行CLS命令 cls enter
ks = new int[]{KeyEvent.VK_C,KeyEvent.VK_L,KeyEvent.VK_S,KeyEvent.VK_ENTER};
pressKeys(rb,ks,500);
rb.delay(1000);
//运行EXIT命令 exit enter
ks = new int[]{KeyEvent.VK_E,KeyEvent.VK_X,KeyEvent.VK_I,KeyEvent.VK_T,KeyEvent.VK_ENTER};
pressKeys(rb,ks,500);
rb.delay(1000);

//右键测试
x=Toolkit.getDefaultToolkit().getScreenSize().width-10;
rb.mouseMove(x, y);
//如果是双键鼠标,请改用InputEvent.BUTTON2_MASK试试,我没有这种鼠标
pressMouse(rb,InputEvent.BUTTON3_MASK,500);
//显示日期调整对话框 a
pressKeys(rb,new int[]{KeyEvent.VK_A},1000);
rb.delay(2000);
pressKeys(rb,new int[]{KeyEvent.VK_ESCAPE},0);
rb.delay(1000);
new Thread(){
public void run(){
rb.delay(1000);
//回车
rb.keyPress(KeyEvent.VK_ENTER);
rb.keyRelease(KeyEvent.VK_ENTER);
}
}.start();
JOptionPane.showMessageDialog(null,"演示完毕!");
}
//鼠标单击,要双击就连续调用
private static void pressMouse(Robot r,int m,int delay){
r.mousePress(m);
r.delay(10);
r.mouseRelease(m);
r.delay(delay);
}
//键盘输入
private static void pressKeys(Robot r,int[] ks,int delay){
for(int i=0; i<ks.length; i++){
r.keyPress(ks[i]);
r.delay(10);
r.keyRelease(ks[i]);
r.delay(delay);
}
}
}

D. java文本框,点击右键,产生右键事件,出现弹出式菜单,三个菜单选项(复制,粘贴,剪切)

在java.awt包中有两个类可以用于弹出式菜单,PopupMenu(弹出式菜单),MenuItem(菜单项),
在 java.awt.event 包的MouseListener与MouseEvent 可用于鼠标事件
下面是代码(是从别的地方借用过来的,删除了一些与此问题无关的内容):
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

public class PopupMenuDemo extends JFrame implements ActionListener
{
JButton btnTest=new JButton("Test");
JTextArea textArea=new JTextArea();
PopupMenu pMenu=new PopupMenu(); //创建弹出式菜单,下面三项是菜单项
MenuItem mItemCopy=new MenuItem("复制");
MenuItem mItemPaste=new MenuItem("粘贴");
MenuItem mItemCut=new MenuItem("剪切");
MouseAdapter mouseAdapter=new MouseAdapter()//监听鼠标事件
{
public void mouseClicked(MouseEvent event)
{
if(event.getButton()==MouseEvent.BUTTON3)//只响应鼠标右键单击事件
{
pMenu.show(textArea,event.getX(),event.getY());//在鼠标位置显示弹出式菜单
}
}
};
ActionListener menuAction=new ActionListener()//响应单击菜单项的事件,只是示例,
{//具体内容可自己编写
public void actionPerformed(ActionEvent e)
{
MenuItem item=(MenuItem)e.getSource();
if(item==mItemCopy) //单击了“复制”菜单项
{
JOptionPane.showMessageDialog(null,"复制");
}
else if(item==mItemPaste) //“粘贴”菜单项
{
JOptionPane.showMessageDialog(null,"粘贴");

}
else
{
JOptionPane.showMessageDialog(null,"剪切"); //“剪切”菜单项
}
}
};
public PopupMenuDemo()
{
setTitle("Test");
setSize(300,300);
setResizable(false);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
add(btnTest,BorderLayout.NORTH);
add(textArea,BorderLayout.CENTER);
textArea.add(pMenu); //弹出式菜单加入到文本框中,否则不能显示
textArea.addMouseListener(mouseAdapter); //文本框加入鼠标监听器
pMenu.add(mItemCopy); //菜单项的单击事件监听器
mItemCopy.addActionListener(menuAction);
pMenu.add(mItemPaste);
mItemPaste.addActionListener(menuAction);
pMenu.add(mItemCut);
mItemCut.addActionListener(menuAction);

btnTest.addActionListener(this);
}
public static void main(String... args)
{
new PopupMenuDemo().setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
JOptionPane.showMessageDialog(null,"测试功能");
}

}

E. java中鼠标右击弹出菜单怎样实现

简单的实现代码如下:

importjava.awt.MenuBar;
importjava.awt.event.MouseAdapter;
importjava.awt.event.MouseEvent;

importjavax.swing.JFrame;
importjavax.swing.JPopupMenu;

/*
*java中鼠标右击弹出菜单怎样实现
*/
publicclassDemo{
publicstaticvoidmain(String[]args){
finalJFramejf=newJFrame("窗体");
jf.setSize(300,300);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setLocationRelativeTo(null);
//创建弹出菜单
finalJPopupMenujp=newJPopupMenu();
jp.add("红色");
jp.add("蓝色");
jf.addMouseListener(newMouseAdapter(){
@Override
publicvoidmouseClicked(MouseEvente){
if(e.getButton()==MouseEvent.BUTTON3){
//弹出菜单
jp.show(jf,e.getX(),e.getY());
}
}
});
jf.setVisible(true);
}
}

F. eclipse 插件开发 右键菜单上添加新功能

在eclipse上如何添加菜单步骤:

1、建立工程

新建eclipse插件工程

Submenu Name:这个是指定你要显示的菜单在右键弹出后的名称,我们起名叫“构建系统”。

Action Label:这个指定了显示的子菜单的名称,这里修改为“模板构建”。

Java Package Name:这里指定了点亩灶棚击模板构建后的处理类的包名,使用默认。

Action Class:这个是处理类的名称,改为TemplateAddAction。

Action is enabled for:表示选择的是单选还是多选,这里用默认。

点击完成。


最后:

Eclipse的资源API

工作空间、项目、文件夹、文件对应的类型接口分别为IWorkspace、IProject、IFolder、IFile。资源相关

的接口都继承了IResource接口,由于工作空间并不只是资源的管理者,因此IWorkspace并没有继承IResource

接口,为了将工作空间作为资源的管理者这一功能体迅则现出来,抽象出了IWorkspaceRoot 的接口(即工作空间

根目录),通过IWorkspace的getRoot 就可以得到对应的工作空间根目录。由于工作空间根目录、项目、文件

夹都是可以容纳其他资源的,因此为它们抽取了一个基类接口IContainer。

类的层次结构图如下:

阅读全文

与java怎么实现右键菜单相关的资料

热点内容
编程题如何左右翻转 浏览:920
wp10微信安装不了 浏览:793
微软数据库密码怎么改 浏览:627
我们是贵族什么app可以看 浏览:65
哪个app认字免费 浏览:964
少儿编程线上教育如何 浏览:137
ps3升级检测不到优盘升级文件 浏览:845
vs连接数据库显示数据 浏览:867
win10的设备和打印机 浏览:876
linux最新 浏览:970
苹果6有时候自动重启 浏览:851
nodejs处理500页面 浏览:456
win10u盘格式化失败怎么办啊 浏览:113
一个游戏测试你java基础是否扎实 浏览:27
怎样让软件不提示更新系统升级 浏览:653
1567密码是什么意思 浏览:759
手机和电视传输文件 浏览:844
iphone5美版怎么样 浏览:852
spss如何比较两组数据的相关性 浏览:935
cad以样板文件打开 浏览:982

友情链接