展開全部
一: 首先對需求進行分析:
兩個不同的按鈕,
兩個事件接收器,
當按鈕被點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) {
//這裡寫事件處理代碼
}
});
三: 效果圖

當點選按鈕一的效果圖
當點選按鈕二的效果圖
四: 參考代碼//導入所需要的包
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開發的規範. 會給我們的工作帶來很多的便利