আমরা একটি MouseListener বাস্তবায়ন করতে পারি ইন্টারফেস যখন মাউস ইভেন্ট পরিচালনা করার সময় মাউস স্থিতিশীল থাকে যেখানে আমরা একটি MouseMotionListener বাস্তবায়ন করতে পারি মাউস ইভেন্ট পরিচালনা করার সময় যখন মাউস সচল থাকে তখন ইন্টারফেস।
মাউস লিসেনার
একটি মাউস ইভেন্ট আমরা যখন প্রেস তখন বহিস্কার করা হয় , মুক্তি অথবা ক্লিক করুন (রিলিজের পরে টিপুন) একটি মাউস বোতাম (বাম বা ডান বোতাম) সোর্স অবজেক্টে বা মাউস পয়েন্টারকে সোর্স অবজেক্ট থেকে (এন্টার) এবং দূরে (প্রস্থান) অবস্থানে রাখুন।
একটি মাউস লিসেনার ইন্টারফেস নিম্নলিখিত পাঁচটি বিমূর্ত পদ্ধতি ঘোষণা করে
সিনট্যাক্স
সর্বজনীন অকার্যকর মাউস ক্লিক করা(MouseEvent evt)সর্বজনীন অকার্যকর মাউস চাপা (MouseEvent evt)সর্বজনীন অকার্যকর মাউস প্রকাশ করা হয়েছে(MouseEvent evt)পাবলিক অকার্যকর মাউস প্রবেশ করা হয়েছে(MouseEvent evt)পাবলিক অকার্যকর মাউস বহিষ্কৃত(মাউসপ্রেভেন্ট)উদাহরণ
import java.awt.*; import java.awt.event.*; import javax.swing.*; পাবলিক ক্লাস MouseListenerTest প্রসারিত করে JFrame প্রয়োগ করে MouseListener { ব্যক্তিগত JTextField tfMouseX, tfMouseY; সর্বজনীন MouseListenerTest() { setLayout(new FlowLayout()); যোগ করুন(নতুন লেবেল("এক্স-ক্লিক:")); tfMouseX =নতুন JTextField(10); tfMouseX.setEditable(false); যোগ করুন(tfMouseX); যোগ করুন(নতুন লেবেল("Y-ক্লিক করুন:")); tfMouseY =নতুন JTextField(10); tfMouseY.setEditable(false); যোগ করুন(tfMouseY); addMouseListener(এটি); setTitle("মাউস লিস্টেনার টেস্ট"); setLocationRelativeTo(নাল); সেট সাইজ (350, 100); সেটডিফল্টক্লোজঅপারেশন(JFrame.EXIT_ON_CLOSE); setVisible(সত্য); } পাবলিক স্ট্যাটিক ভ্যাইড মেইন(স্ট্রিং[] আর্গস) { নতুন মাউসলিসনারটেস্ট(); } @Override public void mouseClicked(MouseEvent evt) { tfMouseX.setText(evt.getX() + ""); tfMouseY.setText(evt.getY() + ""); } // কম্পাইল করার জন্য একটি খালি বডি প্রদান করতে হবে। @Override public void mousePressed(MouseEvent evt) { } @Override public void mouseReleased(MouseEvent evt) { } @Override public void mouseEntered(MouseEvent evt) { } @Override public void mouseExited(MouseEvent) }{}}আউটপুট
মাউস মোশন লিসেনার
একটি মাউস ইভেন্ট আমরা যখন সরানো তখনও বরখাস্ত করা হয় এবং টেনে আনুন উৎস বস্তুতে মাউস পয়েন্টার. কিন্তু আমাদের MouseMotionListener ব্যবহার করতে হবে মাউস-মুভ এবং মাউস-ড্র্যাগ পরিচালনা করতে।
একটি মাউস মোশন লিসেনার ইন্টারফেস নিম্নলিখিত দুটি বিমূর্ত পদ্ধতি ঘোষণা করে
সিনট্যাক্স
সর্বজনীন অকার্যকর মাউস টেনে আনা(মাউস ইভেন্ট ই) পাবলিক অকার্যকর মাউস মুভড(মাউস ইভেন্ট ই)উদাহরণ
java.awt.*; import java.awt.event.*; import javax.swing.*; পাবলিক ক্লাস MouseMotionListenerTest প্রসারিত করে JFrame প্রয়োগ করে MouseListener, MouseMotionListener { ব্যক্তিগত JTextField tfMouseClickX, tfYMouseClick; ব্যক্তিগত JTextField tfMousePositionX, tfMousePositionY; সর্বজনীন MouseMotionListenerTest() { setLayout(new FlowLayout()); যোগ করুন(নতুন লেবেল("এক্স-ক্লিক:")); tfMouseClickX =নতুন JTextField(10); tfMouseClickX.setEditable(false); add(tfMouseClickX); যোগ করুন(নতুন লেবেল("Y-ক্লিক করুন:")); tfMouseClickY =নতুন JTextField(10); tfMouseClickY.setEditable(false); যোগ করুন(tfMouseClickY); যোগ করুন(নতুন JLabel("এক্স-পজিশন:")); tfMousePositionX =নতুন JTextField(10); tfMousePositionX.setEditable(false); add(tfMousePositionX); যোগ করুন(নতুন JLabel("Y-পজিশন:")); tfMousePositionY =নতুন JTextField(10); tfMousePositionY.setEditable(false); add(tfMousePositionY); addMouseListener(এটি); addMouseMotionListener(এটি); setTitle("MouseMotionListener Test"); সেট সাইজ (400, 120); setLocationRelativeTo(নাল); সেটডিফল্টক্লোজঅপারেশন(JFrame.EXIT_ON_CLOSE); setVisible(সত্য); } পাবলিক স্ট্যাটিক ভ্যাইড মেইন(স্ট্রিং[] আরগস) { নতুন মাউসমোশনলিসটেনারটেস্ট(); } @Override public void mouseClicked(MouseEvent evt) { tfMouseClickX.setText(evt.getX() + ""); tfMouseClickY.setText(evt.getY() + ""); } // সংকলনের জন্য একটি খালি বডি প্রদান করতে হবে @Override public void mousePressed(MouseEvent evt) { } @Override public void mouseReleased(MouseEvent evt) { } @Override public void mouseEntered(MouseEvent evt) { } MouseEvent evt) { } @Override public void mouseMoved(MouseEvent evt) { tfMousePositionX.setText(evt.getX() + ""); tfMousePositionY.setText(evt.getY() + ""); } // @Override public void mouseDragged(MouseEvent evt) { }}কম্পাইল করার জন্য একটি খালি বডি প্রদান করতে হবেআউটপুট