Differences
This shows you the differences between two versions of the page.
| Both sides previous revision
Previous revision
Next revision
|
Previous revision
|
swing:popup_menus [2015/05/18 06:45] gthanos |
swing:popup_menus [2015/05/18 06:47] gthanos |
| <code java>public boolean isPopupTrigger()</code> | <code java>public boolean isPopupTrigger()</code> |
| |
| Δείτε το παρακάτω απλοποιημένο παράδειγμα από το site της Oracle | Δείτε το παρακάτω απλοποιημένο παράδειγμα από το site της Oracle. Αυτό που αξίζει να προσέξετε είναι η εσωτερική κλάση ''PopupListener'' η οποία υλοποιεί το interface //MouseListener// μέσω της επέκτασης της κλάσης //MouseAdapter//. Στα events //mousePressed// και //mouseReleased// αυτό που θα κάνουμε είναι να ελέγξουμε εάν το συγκεκριμένο event δικαιολογεί την εμφάνιση του pop-up menu. Σε αυτή την περίπτωση το εμφανίζουμε μέσω της μεθόδου |
| | <code java> |
| | void show(Component invoker, int x, int y) |
| | </code> |
| | της κλάσης [[http://docs.oracle.com/javase/7/docs/api/javax/swing/JPopupMenu.html|JPopupMenu]] στη θέση που προσδιορίζεται από τις συντεταγμένες (X,Y) του ποντικιού όταν έγινε το click event. |
| <code java PopupMenuDemo.java> | <code java PopupMenuDemo.java> |
| package components; | package components; |
| } | } |
| </code> | </code> |
| |
| Αυτό που αξίζει να προσέξετε είναι η εσωτερική κλάση ''PopupListener'' η οποία υλοποιεί το interface //MouseListener// μέσω της επέκτασης της κλάσης //MouseAdapter//. Στα events //mousePressed// και //mouseReleased// αυτό που θα κάνουμε είναι να ελέγξουμε εάν το συγκεκριμένο event δικαιολογεί την εμφάνιση του pop-up menu. Σε αυτή την περίπτωση το εμφανίζουμε μέσω της μεθόδου | |
| <code java> | |
| void show(Component invoker, int x, int y) | |
| </code> | |
| της κλάσης [[http://docs.oracle.com/javase/7/docs/api/javax/swing/JPopupMenu.html|JPopupMenu]] στις θέσεις που προσδιορίζονται από την θέση του ποντικιού όταν έγινε το click event. | |