一级日韩免费大片,亚洲一区二区三区高清,性欧美乱妇高清come,久久婷婷国产麻豆91天堂,亚洲av无码a片在线观看

java語(yǔ)言

如何在java中實(shí)現左右鍵菜單

時(shí)間:2025-03-20 11:09:02 java語(yǔ)言 我要投稿
  • 相關(guān)推薦

如何在java中實(shí)現左右鍵菜單

  愛(ài)學(xué)習的小伙伴們相信都會(huì )使用JAVA編程,但是你知道怎么用JAVA語(yǔ)言實(shí)現鼠標的左右鍵嗎?下面由應屆畢業(yè)生小編為你整理的資料,希望你們喜歡。

  在java中實(shí)現左右鍵菜單

  在java中使實(shí)現右鍵菜單十分簡(jiǎn)單,只需用到一個(gè)控件:PopupMenu.

  首先,需要聲明一個(gè)PopupMenu對像。

  PopupMenu popupMenu1 = new PopupMenu();

  然后新建一些子菜單,這里我們使用建立三個(gè)菜單項

  MenuItem menuItem1 = new MenuItem();

  MenuItem menuItem2 = new MenuItem();

  MenuItem menuItem3 = new MenuItem();

  然后再出初化,并加入監聽(tīng)事件中:

  menuItem1.setLabel("菜單1");

  menuItem1.addActionListener(new java.awt.event.ActionListener() { //菜單1的事件監聽(tīng)

  public void actionPerformed(ActionEvent e) {

  menuItem1_actionPerformed(e); //菜單事件函數

  }

  });

  menuItem2.setLabel("菜單2");

  menuItem3.setLabel("菜單3");

  popupMenu1.add(menuItem1);

  popupMenu1.add(menuItem2);

  popupMenu1.add(menuItem3);

  //在this中加入popupMenu1

  add(popupMenu1);

  這時(shí),菜單已經(jīng)加進(jìn)程序中了,現在我們需要做的就是在點(diǎn)擊右鍵時(shí)顯示。

  先在init中加入鼠標的單擊事件,

  this.addMouseListener(new java.awt.event.MouseAdapter() {

  public void mousePressed(MouseEvent e) {

  this_mousePressed(e);

  }

  });

  再在this_mousePressed(e);中將菜單顯示出來(lái)

  void this_mousePressed(MouseEvent e) {

  int mods=e.getModifiers();

  //鼠標右鍵

  if((mods&InputEvent.BUTTON3_MASK)!=0){

  //彈出菜單

  popupMenu1.show(this,e.getX(),e.getY());

  }

  }

  //菜單1事件

  void menuItem1_actionPerformed(ActionEvent e) {

  //菜單事件1

  }

  好了,講到這里已經(jīng)全部結束,是不是非常簡(jiǎn)單啊

  這里有一個(gè)繼承Panel類(lèi)的完整的例子

  import java.awt.*;

  import java.awt.event.*;

  import javax.swing.*;

  public class Panel1 extends JPanel {

  PopupMenu popupMenu1 = new PopupMenu();

  MenuItem menuItem1 = new MenuItem();

  MenuItem menuItem2 = new MenuItem();

  MenuItem menuItem3 = new MenuItem();

  public Panel1() {

  try {

  jbInit();

  }

  catch(Exception ex) {

  ex.printStackTrace();

  }

  }

  void jbInit() throws Exception {

  this.setLayout(null);

  menuItem1.setLabel("菜單1");

  menuItem1.addActionListener(new java.awt.event.ActionListener() {

  public void actionPerformed(ActionEvent e) {

  menuItem1_actionPerformed(e);

  }

  });

  menuItem2.setLabel("菜單2");

  menuItem3.setLabel("菜單3");

  this.addMouseListener(new java.awt.event.MouseAdapter() {

  public void mousePressed(MouseEvent e) {

  this_mousePressed(e);

  }

  });

  popupMenu1.add(menuItem1);

  popupMenu1.add(menuItem2);

  popupMenu1.add(menuItem3);

  add(popupMenu1);

  }

  void this_mousePressed(MouseEvent e) {

  int mods=e.getModifiers();

  //鼠標右鍵

  if((mods&InputEvent.BUTTON3_MASK)!=0){

  //彈出菜單

  popupMenu1.show(this,e.getX(),e.getY());

  }

  }

  void menuItem1_actionPerformed(ActionEvent e) {

  //菜單事件

  }

  }


【如何在java中實(shí)現左右鍵菜單】相關(guān)文章:

win7右鍵菜單怎么清理10-12

Win10技巧:打造神奇右鍵菜單09-11

Java中如何實(shí)現顯示動(dòng)態(tài)的時(shí)間09-28

講解Java的Spring框架中的AOP實(shí)現10-30

thinkPHP實(shí)現的聯(lián)動(dòng)菜單功能10-03

如何在C/C++中調用Java08-17

如何正確實(shí)現Java中的hashCode方法08-08

詳解Java各個(gè)版本中Builder模式實(shí)現07-27

如何在Dreamweaver制作彈出菜單09-26

一级日韩免费大片,亚洲一区二区三区高清,性欧美乱妇高清come,久久婷婷国产麻豆91天堂,亚洲av无码a片在线观看