swing:events

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
swing:events [2020/03/23 10:55]
gthanos [Οι βασικοί τύποι των διαφορετικών Event]
swing:events [2021/04/13 06:11]
gthanos
Line 5: Line 5:
 Ο **//window manager//** δημιουργεί //events// για κάθε απειροελάχιστη μεταβολή της θέσης του ποντικιού ή για το πάτημα ενός κουμπιού από το πληκτρολόγιο. Τα περισσότερα προγράμματα δεν τα ενδιαφέρει το σύνολο των //events// που παράγονται. Προκειμένου ένα πρόγραμμα να μην "βομβαρδίζεται" με πολλά διαφορετικά events τα οποία του είναι αδιάφορα θα πρέπει να θεσπίσει του δικούς του κανόνες για το ποια events το ενδιαφέρουν. Η θέσπιση των κανόνων αυτών γίνεται μέσα από αντικείμενα τύπου event listeners, τα οποία ακούν σε συγκεκριμένου τύπου events.  Ο **//window manager//** δημιουργεί //events// για κάθε απειροελάχιστη μεταβολή της θέσης του ποντικιού ή για το πάτημα ενός κουμπιού από το πληκτρολόγιο. Τα περισσότερα προγράμματα δεν τα ενδιαφέρει το σύνολο των //events// που παράγονται. Προκειμένου ένα πρόγραμμα να μην "βομβαρδίζεται" με πολλά διαφορετικά events τα οποία του είναι αδιάφορα θα πρέπει να θεσπίσει του δικούς του κανόνες για το ποια events το ενδιαφέρουν. Η θέσπιση των κανόνων αυτών γίνεται μέσα από αντικείμενα τύπου event listeners, τα οποία ακούν σε συγκεκριμένου τύπου events. 
  
-Θα πρέπει να τονίσουμε ότι υπάρχουν διαφορετικοί τύποι event για κάθε διαφορετικό τύπο αλληλεπίδρασης του χρήστη με το γραφικό περιβάλλον. Για παράδειγμα, η μετακίνηση του ποντικιού ή το πάτημα ενός κουμπιού από το ποντίκι παράγει ένα **MouseEvent** ενώ το πάτημα ενός κουμπιού ή η επιλογή ενός menu παράγει ένα **ActionEvent**. Επομένως, το κάθε πρόγραμμα θα πρέπει να θεσπίσει τους κατάλληλους event //listeners// που διαχειρίζονται τα event που παράγονται από τις οντότητες του γραφικού περιβάλλοντος που μας ενδιαφέρουν. Η διαδικασία διαχείρισης και αντίδρασης του προγράμματος σε ένα event, ονομάζεται //**event handling**//.+Θα πρέπει να τονίσουμε ότι υπάρχουν διαφορετικοί τύποι event για κάθε διαφορετικό τύπο αλληλεπίδρασης του χρήστη με το γραφικό περιβάλλον. Για παράδειγμα, η μετακίνηση του ποντικιού ή το πάτημα ενός κουμπιού από το ποντίκι παράγει ένα **MouseEvent** ενώ το πάτημα ενός κουμπιού ή η επιλογή ενός menu παράγει ένα **ActionEvent**. Επομένως, το κάθε πρόγραμμα θα πρέπει να θεσπίσει τους κατάλληλους event //listeners// που διαχειρίζονται τα event που παράγονται από τις οντότητες του γραφικού περιβάλλοντος που ενδιαφέρουν. Η διαδικασία διαχείρισης και αντίδρασης του προγράμματος σε ένα event, ονομάζεται //**event handling**//.
  
 Η εικόνα που ακολουθεί συνοψίζει την διαδικασία για την εφαρμογή της προηγούμενης ενότητας που περιέχει μόνο ένα κουμπί (//button//). Η εικόνα που ακολουθεί συνοψίζει την διαδικασία για την εφαρμογή της προηγούμενης ενότητας που περιέχει μόνο ένα κουμπί (//button//).
swing/events.txt · Last modified: 2021/04/13 05:16 (external edit)