AWT (Abstract Window Toolkit) ইভেন্ট হ্যান্ডলিংয়ে MouseEvent, KeyEvent, এবং ActionEvent হল প্রধান তিনটি ইভেন্ট, যেগুলি ব্যবহারকারীর মাউস, কীবোর্ড এবং অ্যাকশন (যেমন বোতাম ক্লিক) ইন্টারঅ্যাকশনের মাধ্যমে ঘটে। এগুলি সাধারণত Listener ইন্টারফেস দ্বারা হ্যান্ডল করা হয়। প্রতিটি ইভেন্টের জন্য একটি নির্দিষ্ট লিসেনার প্রয়োজন, যা নির্দিষ্ট ইভেন্টের জন্য কাজ করবে।
১. MouseEvent
MouseEvent মাউসের ক্রিয়াকলাপ (যেমন ক্লিক, মুভ, ইত্যাদি) ট্র্যাক করতে ব্যবহৃত হয়।
মাউস ইভেন্টের প্রধান মেথড:
mouseClicked(MouseEvent e): মাউস ক্লিক হলে এটি কল হয়।mousePressed(MouseEvent e): মাউস প্রেস করা হলে কল হয়।mouseReleased(MouseEvent e): মাউস রিলিজ করা হলে কল হয়।mouseEntered(MouseEvent e): মাউস একটি উপাদানে প্রবেশ করলে কল হয়।mouseExited(MouseEvent e): মাউস একটি উপাদান ত্যাগ করলে কল হয়।mouseDragged(MouseEvent e): মাউস ড্র্যাগ হলে কল হয়।mouseMoved(MouseEvent e): মাউস মুভ করলে কল হয়।
উদাহরণ:
import java.awt.*;
import java.awt.event.*;
public class MouseEventExample {
public static void main(String[] args) {
Frame frame = new Frame("MouseEvent Example");
Label label = new Label("MouseEvent Demo");
label.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
label.setText("Mouse Clicked at: " + e.getX() + ", " + e.getY());
}
public void mouseEntered(MouseEvent e) {
label.setText("Mouse Entered");
}
public void mouseExited(MouseEvent e) {
label.setText("Mouse Exited");
}
});
frame.add(label);
frame.setSize(400, 200);
frame.setVisible(true);
}
}
ব্যাখ্যা:
- এখানে মাউস ক্লিক, এন্ট্রি, এবং এক্সিট ইভেন্টগুলোর জন্য লিসেনার ব্যবহৃত হয়েছে।
২. KeyEvent
KeyEvent কীবোর্ডের ইনপুট (যেমন কী প্রেস, কী রিলিজ) হ্যান্ডল করতে ব্যবহৃত হয়।
কী ইভেন্টের প্রধান মেথড:
keyPressed(KeyEvent e): একটি কী প্রেস করা হলে কল হয়।keyReleased(KeyEvent e): একটি কী রিলিজ করা হলে কল হয়।keyTyped(KeyEvent e): একটি কী টাইপ করা হলে কল হয় (যেমন অক্ষর টাইপিং)।
উদাহরণ:
import java.awt.*;
import java.awt.event.*;
public class KeyEventExample {
public static void main(String[] args) {
Frame frame = new Frame("KeyEvent Example");
TextArea textArea = new TextArea();
textArea.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
System.out.println("Key Pressed: " + e.getKeyChar());
}
public void keyReleased(KeyEvent e) {
System.out.println("Key Released: " + e.getKeyChar());
}
});
frame.add(textArea);
frame.setSize(400, 200);
frame.setVisible(true);
}
}
ব্যাখ্যা:
- এখানে কীবোর্ডের প্রেস এবং রিলিজ ইভেন্টের জন্য লিসেনার ব্যবহার করা হয়েছে।
৩. ActionEvent
ActionEvent সাধারণত বোতাম ক্লিক, মেনু সিলেক্ট, অথবা যেকোনো অ্যাকশন ট্রিগার হওয়ার সময় ঘটে। এটি সাধারণত Button, MenuItem, TextField ইত্যাদি উপাদানে ব্যবহৃত হয়।
অ্যাকশন ইভেন্টের প্রধান মেথড:
actionPerformed(ActionEvent e): অ্যাকশন ইভেন্ট ঘটলে কল হয়।
উদাহরণ:
import java.awt.*;
import java.awt.event.*;
public class ActionEventExample {
public static void main(String[] args) {
Frame frame = new Frame("ActionEvent Example");
Button button = new Button("Click Me");
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println("Button Clicked!");
}
});
frame.add(button);
frame.setSize(400, 200);
frame.setVisible(true);
}
}
ব্যাখ্যা:
- এখানে একটি বোতাম ক্লিক হলে "Button Clicked!" প্রিন্ট হবে।
সারাংশ
- MouseEvent: মাউসের বিভিন্ন ক্রিয়া (যেমন ক্লিক, প্রবেশ, ত্যাগ, মুভ) হ্যান্ডল করতে ব্যবহৃত হয়।
MouseListenerবাMouseAdapterইন্টারফেসের মাধ্যমে মাউস ইভেন্ট হ্যান্ডল করা হয়। - KeyEvent: কীবোর্ডের ইনপুটের জন্য ব্যবহৃত হয়। এটি
KeyListenerবাKeyAdapterইন্টারফেসের মাধ্যমে হ্যান্ডল করা হয়। - ActionEvent: অ্যাকশন ইভেন্ট (যেমন বোতাম ক্লিক) হ্যান্ডল করতে ব্যবহৃত হয়। এটি
ActionListenerইন্টারফেসের মাধ্যমে হ্যান্ডল করা হয়।
Read more