生活随笔
收集整理的這篇文章主要介紹了
Java监听器的用法(一):内部类监听器
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
當在處理按鈕等監聽事件時,需要注冊監聽器,監聽器的位置不同,角色就不同,訪問的區域就不同。
內部類是在另一個類中聲明的,包含內部類的類叫做外嵌類
內部類和外嵌類的關系:
1.內部類的外嵌類的成員變量在內部類中仍有效,內部類的方法也可以調用外嵌類的方法。即內部類可以訪問外部類的變量和方法。
2.在內部類的類體中不可以申明類變量和類方法,外嵌類的類體重可以用內部類聲明對象作為外嵌類的成員。
三個按鈕控制面板的三種顏色
import java.awt.*;
import javax.swing.*;
public class ButtonTest
{public static void main(String[] args){ JFrame frame =
new ButtonFrame();frame.setTitle(
"ButtonTest"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(
true);}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ButtonFrame extends JFrame
{private JPanel buttonPanel;
private static final int DEFAULT_WIDTH =
400;
private static final int DEFAULT_HEIGHT =
300;
public ButtonFrame(){ setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);JButton yellowButton =
new JButton(
"Yellow");JButton blueButton =
new JButton(
"Blue");JButton redButton =
new JButton(
"Red");buttonPanel =
new JPanel();buttonPanel.add(yellowButton);buttonPanel.add(blueButton);buttonPanel.add(redButton); add(buttonPanel);ColorListener yellowListener =
new ColorListener(Color.YELLOW);ColorListener blueListener =
new ColorListener(Color.BLUE);ColorListener redListener =
new ColorListener(Color.RED);yellowButton.addActionListener(yellowListener);blueButton.addActionListener(blueListener);redButton.addActionListener(redListener);}
private class ColorListener implements ActionListener{private Color backgroundColor;
public ColorListener(Color c) {backgroundColor = c;}
public void actionPerformed(ActionEvent event) {buttonPanel.setBackground(backgroundColor);}}
}
總結
以上是生活随笔為你收集整理的Java监听器的用法(一):内部类监听器的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。