Java API 分類導覽 - javax.swing.JPopupMenu

JPopupMenu 類別 (class) 用為 Swing 中的快顯功能表。



修飾子
public class JPopupMenu


父類別
javax.swing.JComponent


實作介面
Accessible
MenuElement


建構子
public JPopupMenu()
public JPopupMenu(String label)


常用方法
名稱敘述
add()將選項加入快顯功能表
addMenuKeyListener()設定快顯功能表與鍵盤按鍵的相關事件處理
addPopupMenuListener()設定快顯功能表的相關事件處理
addSeparator()加入分隔線
getLabel()回傳快顯功能表的標籤
insert()依索引值插入新的選項
remove()依索引值移除選項
setLabel()設定快顯功能表的標籤
show()顯示快顯功能表


舉例如下
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

public class PopupMenuDemo extends MouseAdapter {
    JFrame frame;
    JMenuItem item1, item2, item3;
    JPopupMenu popupmenu;
    
    public static void main(String[] args) {
        new PopupMenuDemo();
    }
    
    public PopupMenuDemo() {
        frame = new JFrame("SwingDemo");
        frame.setSize(600, 400);
        frame.setLayout(new GridLayout(6, 4));
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.addMouseListener(this);
        
        popupmenu = new JPopupMenu();
        item1 = new JMenuItem("one");
        item2 = new JMenuItem("two");
        popupmenu.add(item1);
        popupmenu.addSeparator();
        popupmenu.add(item2);
        item3 = new JMenuItem("three");
        popupmenu.insert(item3, 0);
        popupmenu.remove(1);
        popupmenu.setLabel("demo");
        
        frame.add(popupmenu);
        frame.setVisible(true);
        
        System.out.println("getLabel: " + popupmenu.getLabel());
    }
    
    public void mousePressed(MouseEvent e) {
        popupmenu.show(e.getComponent(), e.getX(), e.getY());
    }
}

/* 《程式語言教學誌》的範例程式
    http://pydoing.blogspot.com/
    檔名:PopupMenuDemo.java
    功能:示範 Java 程式 
    作者:張凱慶
    時間:西元 2012 年 9 月 */


此例的 PopupMenuDemo 建立快顯功能表物件 popupmenu 後,依次建立三個選項物件 item1item2item3item1item2 都呼叫 add() 加入快顯功能表,兩者之間亦呼叫 addSeparator() 加入分隔線, item2 則是呼叫 insert() 插入索引值為 0 的位置,最後呼叫 remove() 移除掉索引值 1 的選項, setLabel() 將快顯功能表的標籤設定為 "demo"
popupmenu = new JPopupMenu();
item1 = new JMenuItem("one");
item2 = new JMenuItem("two");
popupmenu.add(item1);
popupmenu.addSeparator();
popupmenu.add(item2);
item3 = new JMenuItem("three");
popupmenu.insert(item3, 0);
popupmenu.remove(1);
popupmenu.setLabel("demo");


建構子的最後呼叫 getLabel() ,在命令列印出快顯功能表的標籤
System.out.println("getLabel: " + popupmenu.getLabel());


編譯後執行,結果如下



中英文術語對照
類別class


您可以繼續參考
Swing 元件
  • ButtonGroup
  • JComponent
    • AbstractButton
      • JButton
      • JToggleButton
        • JCheckBox
        • JRadioButton
      • JMenuItem
        • JCheckBoxMenuItem
        • JMenu
        • JRadioButtonMenuItem
    • JColorChooser
    • JComboBox
    • JFileChooser
    • JInternalFrame
    • JLabel
    • JLayeredPane
      • JDesktopPane
    • JList
    • JMenuBar
    • JOptionPane
    • JPanel
    • JPopupMenu
    • JProgressBar
    • JRootPane
    • JScrollBar
    • JScrollPane
    • JSeparator
    • JSlider
    • JSpinner
    • JSplitPane
    • JTabbedPane
    • JTable
    • text.JTextComponent
      • JEditorPane
        • JTextPane
      • JTextField
        • JFormattedTextField
        • JPasswordField
      • JTextArea
    • JToolBar
    • JToolTip
    • JTree
    • JViewport
  • JDialog
  • JFrame
  • JWindow


相關目錄
Java API 分類導覽
Java 教材
首頁


參考資料
http://docs.oracle.com/javase/6/docs/api/javax/swing/JPopupMenu.html

沒有留言: