Mouse Event Handling (MouseListener, MouseMotionListener)

Keyboard এবং Mouse Events - এডাব্লিউটি (AWT) - Java Technologies

242

AWT (Abstract Window Toolkit) এর Mouse Event Handling এর জন্য দুটি গুরুত্বপূর্ণ ইন্টারফেস ব্যবহৃত হয়:

  1. MouseListener
  2. MouseMotionListener

1. MouseListener

এই ইন্টারফেসটি মাউসের ক্লিক, প্রেস, রিলিজ, এন্টার এবং এক্সিট ইভেন্টগুলোর জন্য ব্যবহৃত হয়।
Methods:

  • void mouseClicked(MouseEvent e) : মাউস ক্লিক করার ইভেন্ট হ্যান্ডল করতে।
  • void mousePressed(MouseEvent e) : মাউস বোতাম প্রেস করার ইভেন্ট হ্যান্ডল করতে।
  • void mouseReleased(MouseEvent e) : মাউস বোতাম ছাড়ার ইভেন্ট হ্যান্ডল করতে।
  • void mouseEntered(MouseEvent e) : মাউস কার্সর যখন কম্পোনেন্টের ভেতরে প্রবেশ করে।
  • void mouseExited(MouseEvent e) : মাউস কার্সর যখন কম্পোনেন্টের বাইরে চলে যায়।

2. MouseMotionListener

এই ইন্টারফেসটি মাউসের মুভমেন্ট বা ড্র্যাগ করার ইভেন্ট হ্যান্ডল করতে ব্যবহৃত হয়।
Methods:

  • void mouseDragged(MouseEvent e) : মাউস ড্র্যাগ করার ইভেন্ট হ্যান্ডল করতে।
  • void mouseMoved(MouseEvent e) : মাউস মুভ করার ইভেন্ট হ্যান্ডল করতে।

উদাহরণ কোড:

import java.awt.*;  
import java.awt.event.*;  

public class MouseEventExample extends Frame implements MouseListener, MouseMotionListener {  

    Label label;  
    
    public MouseEventExample() {  
        // Frame setup
        addMouseListener(this);  
        addMouseMotionListener(this);  

        label = new Label();  
        label.setBounds(20, 50, 300, 20);  
        add(label);  

        setSize(400, 400);  
        setLayout(null);  
        setVisible(true);  
    }  

    // MouseListener methods
    public void mouseClicked(MouseEvent e) {  
        label.setText("Mouse Clicked at X: " + e.getX() + ", Y: " + e.getY());  
    }  

    public void mouseEntered(MouseEvent e) {  
        label.setText("Mouse Entered the Frame!");  
    }  

    public void mouseExited(MouseEvent e) {  
        label.setText("Mouse Exited the Frame!");  
    }  

    public void mousePressed(MouseEvent e) {  
        label.setText("Mouse Pressed");  
    }  

    public void mouseReleased(MouseEvent e) {  
        label.setText("Mouse Released");  
    }  

    // MouseMotionListener methods
    public void mouseDragged(MouseEvent e) {  
        label.setText("Mouse Dragged to X: " + e.getX() + ", Y: " + e.getY());  
    }  

    public void mouseMoved(MouseEvent e) {  
        label.setText("Mouse Moved to X: " + e.getX() + ", Y: " + e.getY());  
    }  

    public static void main(String[] args) {  
        new MouseEventExample();  
    }  
}  

কোডের কার্যপ্রণালী:

  1. MouseListener এবং MouseMotionListener ইন্টারফেস দুটি ইমপ্লিমেন্ট করা হয়েছে।
  2. Label ব্যবহার করে মাউস ইভেন্টের মেসেজ দেখানো হয়েছে।
  3. ইন্টারফেসের প্রত্যেকটি মেথড ওভাররাইড করে মাউস ইভেন্ট হ্যান্ডল করা হয়েছে।
  4. রান করলে, ফ্রেমে ক্লিক, মুভ, ড্র্যাগ ইত্যাদি ইভেন্টগুলো দেখানো হবে।

ফলাফল:

উপরের কোডটি রান করলে মাউসের প্রতিটি ইভেন্টের জন্য আলাদা মেসেজ ফ্রেমে দেখা যাবে।

Content added By
Promotion

Are you sure to start over?

Loading...