導航:首頁 > 編程語言 > 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怎麼實現右鍵菜單相關的資料

熱點內容
ca證書管理器linux 瀏覽:358
蘋果id安全提示問題3個字元 瀏覽:949
iphone上好的拍照軟體 瀏覽:579
word內嵌文件怎麼下載 瀏覽:864
8s16升級 瀏覽:340
計算機網路技術基礎pdf 瀏覽:544
javafrom提交地址參數 瀏覽:721
git發布版本 瀏覽:728
vc修改文件名 瀏覽:149
linux65從域 瀏覽:321
用什麼東西壓縮文件 瀏覽:406
怎麼刪除ipad隱藏的APP 瀏覽:981
編程如何佔用大量內存 瀏覽:116
多個excel表格文件如何組合 瀏覽:918
ubuntu內核升級命令 瀏覽:679
pgp文件夾 瀏覽:894
一鍵還原的文件是什麼格式 瀏覽:581
女漢子微信名霸氣十足 瀏覽:65
win10手機藍屏修復 瀏覽:419
windows2008激活工具 瀏覽:259

友情鏈接