رویداد MouseEntered در جاوا :
رویداد MouseEntered یکی از رویدادهای موجود در جاوا است که به وقوع پیوستن موس در یک عنصر رابط کاربری (UI) را نشان میدهد. این رویداد هنگامی اتفاق میافتد که موس از خارج از محدوده عنصر رابط کاربری وارد آن شود. از این رویداد میتوان در کدهای جاوا استفاده کرد تا در واکنش به ورود موس به یک عنصر، یک عملیات خاصی را انجام داد.
برای استفاده از رویداد MouseEntered در جاوا، ابتدا باید یک شیء از کلاسی که این رویداد را پشتیبانی میکند، ایجاد شود. سپس باید یک متد به نام addMouseMotionListener بر روی عنصر رابط کاربری مورد نظر فراخوانی شود تا بتوان رویداد MouseEntered را دریافت کرد. در این متد، باید یک شیء از کلاسی که رویداد MouseMotionListener را پیادهسازی میکند به عنوان پارامتر ورودی به متد ارسال شود.
رویداد MouseMotionListener شامل دو متد است: mouseMoved و mouseDragged. اما تنها متد mouseMoved برای رویداد MouseEntered قابل استفاده است. درواقع، متد mouseMoved هر بار که موس در عنصر رابط کاربری حرکت میکند، فراخوانی میشود. برای تشخیص این که آیا موس وارد عنصر شده است یا خیر، میتوان از توابعی مانند getX و getY در کلاس MouseEvent استفاده کرد تا مختصات موس را دریافت کرد. با استفاده از این مختصات و ابزارهای دیگری مانند getWidth و getHeight نیز میتوان از ورود موس به عنصر مطلع شد.
یک مثال ساده برای استفاده از رویداد MouseEntered در جاوا میتواند به صورت زیر باشد:
“`java
import java.awt.event.*;
public class MouseEnteredExample {
public static void main(String[] args) {
Frame frame = new Frame(“Mouse Entered Example”);
frame.addMouseMotionListener(new MouseMotionAdapter() {
public void mouseMoved(MouseEvent e) {
int x = e.getX();
int y = e.getY();
if (x >= 0 && x <= frame.getWidth() && y >= 0 && y <= frame.getHeight()) {
System.out.println(“Mouse entered the frame”);
}
}
});
frame.setSize(300, 300);
frame.setVisible(true);
}
}
“`
در این مثال، یک شیء از کلاس Frame ایجاد شده است که یک پنجره را نمایش میدهد. سپس با استفاده از متد addMouseMotionListener و یک شیء از کلاس MouseMotionAdapter به عنوان پارامتر، رویداد MouseEntered برای عنصر رابط کاربری ایجاد شده را دریافت میکنیم. در داخل متد mouseMoved، با استفاده از توابع getX و getY، مختصات موس را دریافت کرده و با استفاده از توابع getWidth و getHeight نیز اندازه عنصر رابط کاربری را دریافت میکنیم. سپس با استفاده از این مختصات و اندازه، ورود موس به عنصر را تشخیص میدهیم و پیامی را در خروجی چاپ میکنیم.
به این ترتیب، با استفاده از رویداد MouseEntered در جاوا، میتوانیم در واکنش به ورود موس به یک عنصر رابط کاربری، عملیات خاصی را انجام داده و کنترل بیشتری بر روی نرمافزار داشته باشیم.