首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

[Java GUI 範例] JButton 按鈕狀態控制與圖示應用

     編輯:Java 相關知識

程式功能

三個按鈕:左按鈕「失效中間按鈕」、中間按鈕無動作、右按鈕「激活中間按鈕」。點擊左/右按鈕切換中間按鈕的啟用/禁用狀態,並同步改變自身可用性。展示圖示、文字位置、助記鍵、工具提示、動作命令等完整按鈕屬性。

核心代碼

public class ButtonDemo extends JPanel implements ActionListener {
    protected JButton b1, b2, b3;

    public ButtonDemo() {
        ImageIcon leftIcon = createImageIcon("images/right.gif");
        ImageIcon midIcon = createImageIcon("images/middle.gif");
        ImageIcon rightIcon = createImageIcon("images/left.gif");

        b1 = new JButton("失效中間按鈕(D)", leftIcon);
        b1.setVerticalTextPosition(AbstractButton.CENTER);
        b1.setHorizontalTextPosition(AbstractButton.LEADING);
        b1.setMnemonic(KeyEvent.VK_D);
        b1.setActionCommand("disable");

        b2 = new JButton("M中間按鈕", midIcon);
        b2.setVerticalTextPosition(AbstractButton.BOTTOM);
        b2.setHorizontalTextPosition(AbstractButton.CENTER);
        b2.setMnemonic(KeyEvent.VK_M);

        b3 = new JButton("E激活中間按鈕", rightIcon);
        b3.setMnemonic(KeyEvent.VK_E);
        b3.setActionCommand("enable");
        b3.setEnabled(false);

        b1.addActionListener(this); b3.addActionListener(this);
        b1.setToolTipText("點擊這個按鈕,將使中間的按鈕失效!");
        b2.setToolTipText("點擊這個按鈕,沒有任何的事件發生!");
        b3.setToolTipText("點擊這個按鈕,將使中間的按鈕有效");

        add(b1); add(b2); add(b3);
    }

    public void actionPerformed(ActionEvent e) {
        if ("disable".equals(e.getActionCommand())) {
            b2.setEnabled(false); b1.setEnabled(false); b3.setEnabled(true);
        } else {
            b2.setEnabled(true); b1.setEnabled(true); b3.setEnabled(false);
        }
    }
    // createImageIcon 載入資源...
}

關鍵屬性解析

方法說明
setVerticalTextPosition文字垂直對齊:TOP, CENTER, BOTTOM
setHorizontalTextPosition文字水平對齊:LEADING(左), CENTER, TRAILING(右)
setMnemonic設定 Alt+鍵 快捷鍵
setActionCommand設定動作命令字串,事件處理時用 e.getActionCommand() 判斷
setToolTipText滑鼠懸停顯示提示文字
setEnabled啟用/禁用按鈕
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved