Java Swing JButton按鈕的實(shí)現(xiàn)示例
1. 概述
官方JavaDocsApi: javax.swing.JButton
JButton
,按鈕。
JButton 常用構(gòu)造方法:
// 創(chuàng)建不帶有設(shè)置文本或圖標(biāo)的按鈕 JButton() // 創(chuàng)建一個(gè)帶文本的按鈕 JButton(String text) // 創(chuàng)建一個(gè)帶圖標(biāo)的按鈕 JButton(Icon icon)
JButton 常用方法:
// 設(shè)置按鈕的 文本、字體 和 字體顏色 void setText(String text) void setFont(Font font) void setForeground(Color fg) /* 以下方法定義在 javax.swing.AbstractButton 基類中 */ // 設(shè)置按鈕是否可用 void setEnabled(boolean enable) // 設(shè)置按鈕在 默認(rèn)、按下、不可用 時(shí)顯示的圖片 void setIcon(Icon defaultIcon) void setPressedIcon(Icon pressedIcon) void setDisabledIcon(Icon disabledIcon) // 是否繪制邊框(設(shè)置不繪制邊框,再結(jié)合上面三個(gè)設(shè)置按鈕狀態(tài)圖片的方法,可實(shí)現(xiàn)自定義按鈕) void setBorderPainted(boolean b);
JButton 常用監(jiān)聽器:
// 添加 和 移除 按鈕的點(diǎn)擊事件 void addActionListener(ActionListener listener) void removeActionListener(ActionListener listener)
2. 代碼實(shí)例: 默認(rèn)按鈕
package com.xiets.swing; import javax.swing.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class Main { public static void main(String[] args) { JFrame jf = new JFrame("測(cè)試窗口"); jf.setSize(200, 200); jf.setLocationRelativeTo(null); jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); JPanel panel = new JPanel(); // 創(chuàng)建一個(gè)按鈕 final JButton btn = new JButton("測(cè)試按鈕"); // 添加按鈕的點(diǎn)擊事件監(jiān)聽器 btn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // 獲取到的事件源就是按鈕本身 // JButton btn = (JButton) e.getSource(); System.out.println("按鈕被點(diǎn)擊"); } }); panel.add(btn); jf.setContentPane(panel); jf.setVisible(true); } }
結(jié)果展示:
點(diǎn)擊按鈕,查看控制臺(tái)輸出。
3. 代碼實(shí)例: 自定義圖片按鈕
使用以下兩張圖片分別表示按鈕 正常顯示 和 被按下時(shí) 顯示 的圖片:
package com.xiets.swing; import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class Main { public static void main(String[] args) throws AWTException { JFrame jf = new JFrame("測(cè)試窗口"); jf.setSize(200, 200); jf.setLocationRelativeTo(null); jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); JPanel panel = new JPanel(); final JButton btn = new JButton(); // 設(shè)置按鈕的默認(rèn)圖片 btn.setIcon(new ImageIcon("button_normal.png")); // 設(shè)置按鈕被點(diǎn)擊時(shí)的圖片 btn.setPressedIcon(new ImageIcon("button_press.png")); // 不繪制邊框 btn.setBorderPainted(false); // 添加按鈕點(diǎn)擊事件監(jiān)聽器 btn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { System.out.println("按鈕被點(diǎn)擊了"); } }); panel.add(btn); jf.setContentPane(panel); jf.setVisible(true); } }
結(jié)果展示:
點(diǎn)擊按鈕,查看控制臺(tái)輸出。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
MybatisPlus實(shí)現(xiàn)分頁查詢和動(dòng)態(tài)SQL查詢的示例代碼
本文主要介紹了MybatisPlus實(shí)現(xiàn)分頁查詢和動(dòng)態(tài)SQL查詢的示例代碼,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09Java Serializable和Parcelable詳解及實(shí)例代碼
這篇文章主要介紹了Java Serializable和Parcelable詳解,并附實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下2016-09-09MyBatis綁定錯(cuò)誤提示BindingException:Invalid bound statement (not f
這篇文章主要介紹了MyBatis綁定錯(cuò)誤提示BindingException:Invalid bound statement (not found)的解決辦法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的的朋友參考下吧2017-01-01SpringBoot詳解如果通過@Value注解給靜態(tài)變量注入值
這篇文章主要介紹了springboot如何通過@Value給靜態(tài)變量注入值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06最新springboot中必須要了解的自動(dòng)裝配原理
本文給大家介紹springboot中必須要了解的自動(dòng)裝配原理,spring-boot-dependencies:核心依賴都在父工程中,這個(gè)里面主要是管理項(xiàng)目的資源過濾及插件,本文對(duì)springboot自動(dòng)裝配原理給大家介紹的非常詳細(xì),需要的朋友參考下吧2022-05-05springboot下mybatis-plus開啟打印sql日志的配置指南
這篇文章主要給大家介紹了關(guān)于springboot下mybatis-plus開啟打印sql日志的配置指南的相關(guān)資料,還介紹了關(guān)閉打印的方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03