ContainerListener Interface trong Java Swing
ContainerListener Interface được sử dụng để nhận các sự kiện liên quan tới container. Lớp mà xử lý container event cần triển khai interface này. Cú pháp để khai báo java.awt.event.ContainerListener là:
public interface ContainerListener extends EventListener
Interface này kế thừa các phương thức từ lớp java.awt.EventListener.
Các phương thức của MouseListener Interface trong Java Swing
1. void componentAdded(ContainerEvent e): Được triệu hồi khi một thành phần đã được thêm vào container.
2. void componentRemoved(ContainerEvent e): Được triệu hồi khi một thành phần đã bị xóa khỏi container.
Ví dụ ContainerListener
package com.vietjack.gui;import java.awt.*; import java.awt.event.*; import javax.swing.*;public class SwingListenerDemo { private JFrame mainFrame; private JLabel headerLabel; private JLabel statusLabel; private JPanel controlPanel; public SwingListenerDemo(){ prepareGUI(); } public static void main(String[] args){ SwingListenerDemo swingListenerDemo = new SwingListenerDemo(); swingListenerDemo.showContainerListenerDemo(); } private void prepareGUI(){ mainFrame = new JFrame("Vi du Java Swing"); mainFrame.setSize(400,400); mainFrame.setLayout(new GridLayout(3, 1)); headerLabel = new JLabel("",JLabel.CENTER ); statusLabel = new JLabel("",JLabel.CENTER); statusLabel.setSize(350,100); mainFrame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent windowEvent){ System.exit(0); } }); controlPanel = new JPanel(); controlPanel.setLayout(new FlowLayout()); mainFrame.add(headerLabel); mainFrame.add(controlPanel); mainFrame.add(statusLabel); mainFrame.setVisible(true); } private void showContainerListenerDemo(){ headerLabel.setText("Listener in action: ContainerListener"); JPanel panel = new JPanel(); panel.setBackground(Color.magenta); panel.addContainerListener(new CustomContainerListener()); JLabel msglabel = new JLabel("Chao mung ban den voi bai huong dan Java Swing." ,JLabel.CENTER); panel.add(msglabel); controlPanel.add(panel); mainFrame.setVisible(true); } class CustomContainerListener implements ContainerListener { public void componentAdded(ContainerEvent e) { statusLabel.setText(statusLabel.getText() + e.getComponent().getClass().getSimpleName() + " added. "); } public void componentRemoved(ContainerEvent e) { statusLabel.setText(statusLabel.getText() + e.getComponent().getClass().getSimpleName() + " removed. "); } }}
Bài học Java phổ biến tại hoconline.club:
event_listener_trong_java_swing.jsp
Quảng cáo
Bài viết liên quan