中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java Swing JToggleButton開關按鈕的實現

發布時間:2020-10-11 12:36:06 來源:腳本之家 閱讀:349 作者:xietansheng 欄目:編程語言

1. 概述

官方JavaDocsApi: javax.swing.JToggleButton

JToggleButton,開關按鈕。JToggleButton 是 JRadioButton, JCheckBox 的父類,主要實現一個按鈕的兩種狀態(選中 和 未選中)來實現開關切換的效果。

JToggleButton 常用構造方法:

// 無文本,默認未選中
JToggleButton()

// 有文本,默認未選中
JToggleButton(String text)

// 有文本,并指定是否選中
JToggleButton(String text, boolean selected)

JToggleButton 常用方法:

// 設置開關按鈕的 文本、字體 和 字體顏色
void setText(String text)
void setFont(Font font)
void setForeground(Color fg)

/* 以下方法定義在 javax.swing.AbstractButton 基類中 */

// 設置開關按鈕是否選中狀態
void setSelected(boolean b)

// 判斷開關按鈕是否選中
boolean isSelected()

// 設置開關按鈕是否可用
void setEnabled(boolean enable)

// 設置開關按鈕在 默認(關)、被選中(開)、不可用 時顯示的圖片
void setIcon(Icon defaultIcon)
void setPressedIcon(Icon pressedIcon)
void setDisabledIcon(Icon disabledIcon)

// 設置圖片和文本之間的間距
void setIconTextGap(int iconTextGap)

JToggleButton 常用監聽器:

// 添加狀態改變監聽器
void addChangeListener(ChangeListener l)

2. 代碼實例: 默認的開關按鈕

package com.xiets.swing;

import javax.swing.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;

public class Main {

 public static void main(String[] args) {
  JFrame jf = new JFrame("測試窗口");
  jf.setSize(250, 250);
  jf.setLocationRelativeTo(null);
  jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

  JPanel panel = new JPanel();

  // 創建開關按鈕
  JToggleButton toggleBtn = new JToggleButton("開關按鈕");

  // 添加 toggleBtn 的狀態被改變的監聽
  toggleBtn.addChangeListener(new ChangeListener() {
   @Override
   public void stateChanged(ChangeEvent e) {
    // 獲取事件源(即開關按鈕本身)
    JToggleButton toggleBtn = (JToggleButton) e.getSource();
    System.out.println(toggleBtn.getText() + " 是否選中: " + toggleBtn.isSelected());
   }
  });

  panel.add(toggleBtn);

  jf.setContentPane(panel);
  jf.setVisible(true);
 }

}

結果展示:

Java Swing JToggleButton開關按鈕的實現

運行代碼,點擊開關按鈕,查看控制臺輸出。

3. 代碼實例: 自定義圖片開關

使用下面兩個圖片分別代表開關按鈕的 選中(開) 和 未選中(關) 狀態,分別命名為: toggle_on.png,toggle_off.png:

Java Swing JToggleButton開關按鈕的實現

package com.xiets.swing;

import javax.swing.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;

public class Main {

  public static void main(String[] args) {
    JFrame jf = new JFrame("測試窗口");
    jf.setSize(250, 250);
    jf.setLocationRelativeTo(null);
    jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

    JPanel panel = new JPanel();

    // 創建開關按鈕
    JToggleButton toggleBtn = new JToggleButton();

    // 首先設置不繪制按鈕邊框
    toggleBtn.setBorderPainted(false);

    // 設置 選中(開) 和 未選中(關) 時顯示的圖片
    toggleBtn.setSelectedIcon(new ImageIcon("toggle_on.png"));
    toggleBtn.setIcon(new ImageIcon("toggle_off.png"));

    // 添加 toggleBtn 的狀態被改變的監聽
    toggleBtn.addChangeListener(new ChangeListener() {
      @Override
      public void stateChanged(ChangeEvent e) {
        // 獲取事件源(即開關按鈕本身)
        JToggleButton toggleBtn = (JToggleButton) e.getSource();
        System.out.println(toggleBtn.getText() + " 是否選中: " + toggleBtn.isSelected());
      }
    });

    panel.add(toggleBtn);

    jf.setContentPane(panel);
    jf.setVisible(true);
  }

}

Java Swing JToggleButton開關按鈕的實現

運行代碼,點擊開關按鈕,查看控制臺輸出。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新昌县| 锦州市| 博罗县| 汉川市| 湖南省| 临颍县| 营口市| 靖西县| 遂川县| 延川县| 廊坊市| 龙山县| 都安| 德格县| 通江县| 镇江市| 仙桃市| 兴安县| 延边| 融水| 鸡西市| 广德县| 桐柏县| 汝南县| 顺昌县| 漯河市| 嵊州市| 丰镇市| 唐河县| 石阡县| 浪卡子县| 河源市| 青浦区| 嵊泗县| 阿合奇县| 新巴尔虎左旗| 汝南县| 正安县| 隆子县| 黎川县| 常山县|