User Tools

Site Tools


swing:jframe

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
Previous revision
Next revision Both sides next revision
swing:jframe [2018/03/22 08:19]
gthanos [Δομικά στοιχεία ενός JFrame]
swing:jframe [2018/03/27 20:34]
gthanos [Βασικές μέθοδοι της κλάσης JFrame]
Line 55: Line 55:
 ===== Δομικά στοιχεία ενός JFrame ===== ===== Δομικά στοιχεία ενός JFrame =====
  
-Από τι αποτελείται όμως ένα αντικείμενο της κλάσης [[https://docs.oracle.com/javase/7/docs/api/javax/swing/JFrame.html|JFrame]]; Στην πραγματικότητα ένα **JFrame** είναι ένα αντικείμενο που χρησιμοποιεί τα hooks του λειτουργικού συστήματος και του window manager για να δημιουργήσει ένα παράθυρο. Ένα JFrame περιέχει ένα αντικείμενο της κλάσης [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JRootPane.html|JRootPane]], το οποίο με τη σειρά του περιέχει οτιδήποτε συνδέεται με το περιεχόμενο του παραθύρου. Πιο συγκεκριμένα ένα [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JRootPane.html|JRootPane]] περιέχει με τη σειρά του:+Από τι αποτελείται όμως ένα αντικείμενο της κλάσης [[https://docs.oracle.com/javase/7/docs/api/javax/swing/JFrame.html|JFrame]]; Στην πραγματικότητα ένα **JFrame** είναι ένα αντικείμενο που χρησιμοποιεί τα hooks του λειτουργικού συστήματος και του window manager για να δημιουργήσει ένα παράθυρο. Ένα **JFrame** περιέχει ένα αντικείμενο της κλάσης [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JRootPane.html|JRootPane]], το οποίο με τη σειρά του περιέχει οτιδήποτε συνδέεται με το περιεχόμενο του παραθύρου. Πιο συγκεκριμένα ένα [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JRootPane.html|JRootPane]] περιέχει με τη σειρά του τα εξής:
   - ένα αντικείμενο της κλάσης [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JLayeredPane.html|JLayeredPane]] το οποίο έχει την δυνατότητα να προσδίδει βάθος στα αντικείμενα που περιέχονται στο παράθυρο. Δεν θα ασχοληθούμε περαιτέρω με τη συγκεκριμένη κλάση, καθώς έχει ειδικές εφαρμογές. Μπορείτε να δείτε το σχετικό [[https://docs.oracle.com/javase/tutorial/uiswing/components/layeredpane.html|παράδειγμα από το site της Oracle]].   - ένα αντικείμενο της κλάσης [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JLayeredPane.html|JLayeredPane]] το οποίο έχει την δυνατότητα να προσδίδει βάθος στα αντικείμενα που περιέχονται στο παράθυρο. Δεν θα ασχοληθούμε περαιτέρω με τη συγκεκριμένη κλάση, καθώς έχει ειδικές εφαρμογές. Μπορείτε να δείτε το σχετικό [[https://docs.oracle.com/javase/tutorial/uiswing/components/layeredpane.html|παράδειγμα από το site της Oracle]].
   - ένα //content pane// (συνήθως είναι αντικείμενο της κλάσης [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JPanel.html|JPanel]])   - ένα //content pane// (συνήθως είναι αντικείμενο της κλάσης [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JPanel.html|JPanel]])
   - ένα [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JMenuBar.html|menu]] που τοποθετείται ακριβώς πάνω από το //content pane//.   - ένα [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JMenuBar.html|menu]] που τοποθετείται ακριβώς πάνω από το //content pane//.
-  - ένα //component// που ονομάζεται Glass Pane και τοποθετείται πάνω από το JLayeredPane.+  - ένα //component// που ονομάζεται Glass Pane και τοποθετείται πάνω από το [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JLayeredPane.html|JLayeredPane]], προκειμένου να πιάσει με τη βοήθεια του ποντικιού events πάνω από άλλα αντικείμενα. Και αυτό δεν θα μας απασχολήσει στη συνέχεια, καθώς έχει ειδικές εφαρμογές.
  
-Το παρακάτω σχήμα από το [[https://docs.oracle.com/javase/tutorial/uiswing/components/toplevel.html#rootpane|site της Oracle]] δίνει εποπτικά την παραπάνω διάκριση των περιεχομένων του [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JRootPane.html|JRootPane]].+Το παρακάτω σχήμα από το [[https://docs.oracle.com/javase/tutorial/uiswing/components/toplevel.html#rootpane|site της Oracle]] δίνει εποπτικά την παραπάνω διάκριση των περιεχομένων του [[https://docs.oracle.com/javase/8/docs/api/javax/swing/JRootPane.html|JRootPane]]. Δεν θα ασχοληθούμε περαιτέρω με την κλάση **JRootPane**, αλλά θα επικεντρωθούμε στο //content pane// και το //menu bar// που αυτό περιέχει (στοιχεία 2 και 3 από την παραπάνω λίστα).
  
 {{  :swing:ui-rootpane.gif  |}} {{  :swing:ui-rootpane.gif  |}}
Line 82: Line 82:
   * **public void setDefaultCloseOPeration(int operation)**: Αναφέρθηκε προηγούμενα.   * **public void setDefaultCloseOPeration(int operation)**: Αναφέρθηκε προηγούμενα.
  
 +| Προηγούμενο: [[:swing:events | Events & Event Listeners ]] | [[:toc | Περιεχόμενα ]] | Επόμενο: [[:swing:color | Η κλάση JColor ]] |
  
swing/jframe.txt · Last modified: 2021/04/13 05:33 (external edit)