যখন মাউস স্থির থাকা অবস্থায় মাউস ইভেন্ট হ্যান্ডেল করা হয়, তখন MouseListener ইন্টারফেস বাস্তবায়ন করা যায়। MouseEvent ফায়ার হয় যখন আমরা সোর্স অবজেক্ট বা পজিশনে মাউস বাটন (বাম বা ডান) প্রেস, রিলিজ বা ক্লিক (প্রেস ফলোড বাই রিলিজ) করি বা মাউস পয়েন্টারকে সোর্স অবজেক্টে (এন্টার) এবং দূরে (এক্সিট) পজিশন করি। MouseAdapter ক্লাস বা MouseListener ইন্টারফেসের mouseEntered() মেথড ব্যবহার করে কোনো কম্পোনেন্টের (যেমন লেবেল) ওপর মাউস যাওয়ার ইভেন্ট ডিটেক্ট করা যায় এবং mouseExited() মেথড ব্যবহার করে বের হয়ে যাওয়া ডিটেক্ট করা যায়।
উদাহরণ
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MouseOverTest extends JFrame {
private JLabel label;
public MouseOverTest() {
setTitle("MouseOver Test");
setLayout(new FlowLayout());
label = new JLabel("Move the mouse moves over this JLabel");
label.setOpaque(true);
add(label);
label.addMouseListener(new MouseAdapter() {
public void mouseEntered(MouseEvent evt) {
Color c = label.getBackground(); // মাউস লেবেলের ওপর যাওয়ায় ব্যাকগ্রাউন্ড কালার পরিবর্তন
label.setBackground(label.getForeground());
label.setForeground(c);
}
public void mouseExited(MouseEvent evt) {
Color c = label.getBackground();
label.setBackground(label.getForeground());
label.setForeground(c);
}
});
setSize(400, 275);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new MouseOverTest();
}
}
আউটপুট
