高级组件——弹出式菜单JPopupMenu
生活随笔
收集整理的這篇文章主要介紹了
高级组件——弹出式菜单JPopupMenu
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
彈出式菜單JPopupMenu,需要用到鼠標(biāo)事件。
MouseListener必須要實現(xiàn)所有接口,MouseAdapter是類,只寫你關(guān)心的方法,即MouseAdapter實現(xiàn)了MouseListener中的方法
import javax.swing.*; import java.awt.*; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent;public class Demo extends JFrame {public Demo() {setTitle("彈出式菜單");setBounds(100, 100, 300, 200);setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);Container c = getContentPane();JLabel label = new JLabel("請單擊鼠標(biāo)右鍵");c.add(label, BorderLayout.CENTER);JPopupMenu popupMenu = new JPopupMenu();//彈出式菜單JMenuItem copyItem=new JMenuItem("復(fù)制");popupMenu.add(copyItem);JMenu pasteItem=new JMenu("粘貼");popupMenu.add(pasteItem);JMenuItem pasteItem1=new JMenuItem("只粘貼文本");JMenuItem pasteItem2=new JMenuItem("源格式粘貼");pasteItem.add(pasteItem1);pasteItem.add(pasteItem2);//MouseListener必須要實現(xiàn)所有接口,MouseAdapter是類,只寫你關(guān)心的方法,即MouseAdapter實現(xiàn)了MouseListener中的方法c.addMouseListener(new MouseAdapter() {//為窗體頂層容器添加鼠標(biāo)監(jiān)聽public void mouseReleased(MouseEvent e) {//鼠標(biāo)釋放if (e.isPopupTrigger()) {//判斷鼠標(biāo)事件是否是彈出菜單觸發(fā),若是則在釋放鼠標(biāo)的位置彈出菜單 popupMenu.show(e.getComponent(), e.getX(), e.getY());}}});}public static void main(String[] args) {Demo frame = new Demo();frame.setVisible(true);} }
MouseListener必須要實現(xiàn)所有接口,MouseAdapter是類,只寫你關(guān)心的方法,即MouseAdapter實現(xiàn)了MouseListener中的方法
import javax.swing.*; import java.awt.*; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent;public class Demo extends JFrame {public Demo() {setTitle("彈出式菜單");setBounds(100, 100, 300, 200);setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);Container c = getContentPane();JLabel label = new JLabel("請單擊鼠標(biāo)右鍵");c.add(label, BorderLayout.CENTER);JPopupMenu popupMenu = new JPopupMenu();//彈出式菜單JMenuItem copyItem=new JMenuItem("復(fù)制");popupMenu.add(copyItem);JMenu pasteItem=new JMenu("粘貼");popupMenu.add(pasteItem);JMenuItem pasteItem1=new JMenuItem("只粘貼文本");JMenuItem pasteItem2=new JMenuItem("源格式粘貼");pasteItem.add(pasteItem1);pasteItem.add(pasteItem2);//MouseListener必須要實現(xiàn)所有接口,MouseAdapter是類,只寫你關(guān)心的方法,即MouseAdapter實現(xiàn)了MouseListener中的方法c.addMouseListener(new MouseAdapter() {//為窗體頂層容器添加鼠標(biāo)監(jiān)聽public void mouseReleased(MouseEvent e) {//鼠標(biāo)釋放if (e.isPopupTrigger()) {//判斷鼠標(biāo)事件是否是彈出菜單觸發(fā),若是則在釋放鼠標(biāo)的位置彈出菜單 popupMenu.show(e.getComponent(), e.getX(), e.getY());}}});}public static void main(String[] args) {Demo frame = new Demo();frame.setVisible(true);} }
?
?轉(zhuǎn)載于:https://www.cnblogs.com/xixixing/p/9760048.html
總結(jié)
以上是生活随笔為你收集整理的高级组件——弹出式菜单JPopupMenu的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 输入输出优化(黑科技)
- 下一篇: c:if test=/c:if 使用