天天看點

java 按兩個鍵_Java 兩個按鈕不同狀态切換

展開全部

一:  首先對需求進行分析:

兩個不同的按鈕,

兩個事件接收器,

當按鈕被點e68a843231313335323631343130323136353331333339653636擊後, 事件接收器接受到點選資訊, 然後進行事件處理邏輯--->修改按鈕的狀态

二: 其次 對需要用的知識進行分析

A. 按鈕狀态的設定

按鈕的狀态----->不可見----->通過設定屬性是否可見實作JButton button1 = new JButton("按鈕一");

button1.setVisible(false); //設定為不可見的狀态

按鈕的狀态----->不可用----->通過設定屬性是否用實作JButton button2 = new JButton("按鈕二");

button2.setEnabled(false); //設定為不可用的狀态

B. 事件的接收器的設定, 已經書寫

一般使用匿名内部類來書寫接收器, 以及處理代碼button.addActionListener(new ActionListener() {//為按鈕添加事件接收器

public void actionPerformed(ActionEvent e) {

//這裡寫事件處理代碼

}

});

三: 效果圖

java 按兩個鍵_Java 兩個按鈕不同狀态切換

當點選按鈕一的效果圖

java 按兩個鍵_Java 兩個按鈕不同狀态切換

當點選按鈕二的效果圖

java 按兩個鍵_Java 兩個按鈕不同狀态切換

四: 參考代碼//導入所需要的包

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class FrameDemo extends JFrame {

//申明需要操作的按鈕控件

private final JButton button1,button2;

public FrameDemo() {

setTitle("按鈕測試視窗");//設定視窗标題

setSize(220, 80);//設定視窗的大小

setLocationRelativeTo(null);//設定視窗居于螢幕中央

setDefaultCloseOperation(EXIT_ON_CLOSE);//設定點選關閉時退出虛拟機

setLayout(new FlowLayout());//布局視窗為流式布局

button1 = new JButton("按鈕一");

button2 = new JButton("按鈕二");

button1.addActionListener(new ActionListener() {//為按鈕一設定事件接收器

public void actionPerformed(ActionEvent e) {

button1.setVisible(false);//當按鈕一被點選時,該按鈕設定為不可見

}

});

button2.addActionListener(new ActionListener() {//為按鈕二設定事件接收器

public void actionPerformed(ActionEvent e) {

button2.setEnabled(false);//當按鈕二被點選時,該按鈕設定為不可用

}

});

JPanel jp = new JPanel(new GridLayout(1, 2));

jp.add(button1);

jp.add(button2);

add(jp);

}

public static void main(String[] args) {

new FrameDemo().setVisible(true);//建立按鈕視窗,并且設定為可見

}

}

五: 拓展思考

java 的源代碼一般都遵循java 的規範,

屬性的設定使用setXXX(...)方法

屬性的獲得使用getXxx();  方法

使用的時候, 可以很友善的調用

是以, 我們平時開發java的時候也應該遵循java開發的規範. 會給我們的工作帶來很多的便利