الجامعات العربية

طريقة إظهار قائمة JPopupMenu عند النقر على زر الفأرة الأيمن

طريقة إظهار قائمة JPopupMenu عند النقر على زر الفأرة الأيمن
طريقة إظهار قائمة JPopupMenu عند النقر على زر الفأرة الأيمن
طريقة إظهار قائمة JPopupMenu عند النقر على زر الفأرة الأيمن
طريقة إظهار قائمة JPopupMenu عند النقر على زر الفأرة الأيمن

طريقة إظهار قائمة JPopupMenu عند النقر على زر الفأرة الأيمن
المناهج السعوديةطريقة إظهار قائمة JPopupMenu عند النقر على زر الفأرة الأيمن
المثال التالي يعلمك طريقة إنشاء قائمة Popup Menu ) تظهر عند النقر على زر الفأرة الأيمن Right Click ).
هذه القائمة تسمح للمستخدم بأن يقوم بنسخ, قص, لصق و تحديد المحتوى.

مثال

Main.java

  1. import java.awt.event.ActionEvent;
  2. import java.awt.event.ActionListener;
  3. import java.awt.event.MouseAdapter;
  4. import java.awt.event.MouseEvent;
  5. import javax.swing.JFrame;
  6. import javax.swing.JPopupMenu;
  7. import javax.swing.JMenuItem;
  8. import javax.swing.JScrollPane;
  9. import javax.swing.JTextArea;
  10. import javax.swing.SwingUtilities;
  11.  
  12. publicclass Main {
  13.  
  14. publicstaticvoidmain(String[] args){
  15.  
  16. JFrame frame = newJFrame(“JPopupMenu demo”)// أي قمنا بإنشاء نافذة مع وضع عنوان لها JFrame هنا أنشأنا كائن من الكلاس
  17. frame.setSize(400300)// هنا قمنا بتحديد حجم النافذة. عرضها 400 و طولها 300
  18. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)// هنا جعلنا زر الخروج من النافذة يغلق البرنامج
  19.  
  20. // الحاجة Scroll Bar لتظهر ScrollPane و وضعناها بداخل Text Area هنا قمنا بتعريف
  21. JTextArea textArea = newJTextArea();
  22. JScrollPane textAreaScroller = newJScrollPane(textArea);
  23.  
  24. // و الذي يمثل قائمة منبثقة JPopupMenu هنا قمنا بتعريف كائن من الكلاس
  25. JPopupMenu popupMenu = newJPopupMenu();
  26.  
  27. // هنا قمنا بتعريف العناصر التي سنضعها في القائمة
  28. JMenuItem cut = newJMenuItem(“Cut”);
  29. JMenuItem copy = newJMenuItem(“Copy”);
  30. JMenuItem paste = newJMenuItem(“Paste”);
  31. JMenuItem selectAll = newJMenuItem(“Select All”);
  32.  
  33. // في القائمة المنبثقة select و paste ,copy ,cut هنا قمنا بوضع العناصر
  34. popupMenu.add(cut);
  35. popupMenu.add(copy);
  36. popupMenu.add(paste);
  37. popupMenu.addSeparator(); // هنا أضفا خط فاصل
  38. popupMenu.add(selectAll);
  39.  
  40. // و بالتالي ربطنا بها textArea هنا وضعنا القائمة المنبثقة في الـ
  41. textArea.add(popupMenu);
  42.  
  43. // frame في الـ textAreaScroller هنا قمنا بوضع الـ
  44. frame.add(textAreaScroller);
  45.  
  46.  
  47. // في القائمة cut هنا نضع الأوامر التي ستنفذ عند النقر على العنصر
  48. cut.addActionListener(newActionListener(){
  49. @Override
  50. publicvoidactionPerformed(ActionEvent e){
  51. // هنا قلنا أنه سيتم قص المحتوى الذي قام المستخدم بتحديده
  52. textArea.cut();
  53. }
  54. });
  55.  
  56. // في القائمة copy هنا نضع الأوامر التي ستنفذ عند النقر على العنصر
  57. copy.addActionListener(newActionListener(){
  58. @Override
  59. publicvoidactionPerformed(ActionEvent e){
  60. // هنا قلنا أنه سيتم نسخ المحتوى الذي قام المستخدم بتحديده
  61. textArea.copy();
  62. }
  63. });
  64.  
  65. // في القائمة paste هنا نضع الأوامر التي ستنفذ عند النقر على العنصر
  66. paste.addActionListener(newActionListener(){
  67. @Override
  68. publicvoidactionPerformed(ActionEvent e){
  69. // هنا قلنا أنه سيتم لصق المحتوى الذي قام المستخدم بقصه أو نسخه
  70. textArea.paste();
  71. }
  72. });
  73.  
  74. // في القائمة selectAll هنا نضع الأوامر التي ستنفذ عند النقر على العنصر
  75. selectAll.addActionListener(newActionListener(){
  76. @Override
  77. publicvoidactionPerformed(ActionEvent e){
  78. // Text Area هنا قلنا أنه سيتم تحديد كامل محتوى الـ
  79. textArea.selectAll();
  80. }
  81. });
  82.  
  83. // textArea هنا نضع الأوامر التي ستنفذ عند النقر على الـ
  84. textArea.addMouseListener(newMouseAdapter(){
  85. @Override
  86. publicvoidmouseClicked(MouseEvent e){
  87. // إذا قام المستخدم بالنقر على زر الفأرة الأيمن سيتم إظهار القائمة في المكان الذي نقر فيه
  88. if( SwingUtilities.isRightMouseButton(e))
  89. popupMenu.show(textArea, e.getX(), e.getY());
  90. }
  91. });
  92.  
  93. // مرئية frame هنا جعلنا الـ
  94. frame.setVisible(true);
  95.  
  96. }
  97.  
  98. }

ستظهر لك النافذة التالية عند التشغيل.
لإظهار القائمة, أنقر بزر الفأرة الأيمن على أي مكان في الـ Text Area.

طريقة إظهار قائمة JPopupMenu عند النقر على زر الفأرة الأيمن في جافا
 
 

المصدر: طريقة إظهار قائمة JPopupMenu عند النقر على زر الفأرة الأيمن – المناهج السعودية

مقالات ذات صلة

اترك رد

زر الذهاب إلى الأعلى

أنت تستخدم إضافة Adblock

برجاء دعمنا عن طريق تعطيل إضافة Adblock