Προσαρμογή της διάταξης συστατικών στοιχείων στη GridBagLayout

Μπορείτε να χρησιμοποιήσετε το παράθυρο "Προσαρμογή διάταξης" για να προσδιορίσετε θέση αγκύρωσης, εσωτερικά περιγράμματα, σημεία συμπλήρωσης, κάλυψη, γέμισμα και βάρος των συστατικών στοιχείων εντός της GridBagLayout.

Στη GridBagLayout, η λειτουργία επεξεργασίας γραφικού περιβάλλοντος χρησιμοποιεί προεπιλεγμένες τιμές για περιορισμούς, όπως συμπλήρωση, αγκύρωση, βάρος x και βάρος y, προκειμένου να εμφανιστεί καλύτερα το συστατικό στοιχείο. Για παράδειγμα, όταν εναποθέτετε μια javax.swing.JTextField, η συμπλήρωση ορίζεται στην τιμή HORIZONTAL (η προεπιλεγμένη τιμή για τη JTextField είναι NONE), και η τιμή του βάρους X έχει οριστεί 1 (προεπιλεγμένη τιμή για JTextField είναι 0).

Κατά τη μετάβαση από μια GridBagLayout σε άλλη λειτουργία διαχείρισης διάταξης, η λειτουργία επεξεργασίας γραφικού περιβάλλοντος για Java δημιουργεί περιορισμούς για κάθε συστατικό στοιχείο με βάση τα υπάρχοντα όρια. Ένα πλεονέκτημα της χρήση GridBagConstraints αντίθετα από μια διάταξη null είναι ότι κάθε συστατικό στοιχείο έχει μέγεθος ανάλογα με το προτιμώμενο μέγεθος. Έτσι, εάν το μέγεθος του γονικού παραθύρου ή το προτιμώμενο μέγεθος αλλάζει στο χρόνο εκτέλεσης λόγω διαφορετικών σειρών χαρακτήρων γλώσσας, η λειτουργία διαχείρισης διάταξης θα αλλάξει το μέγεθος και τη θέση όλων των συστατικών στοιχείων και θα κάνει τη βέλτιστη χρήση του διαθέσιμου χώρου.

Για την προσαρμογή της διάταξης των συστατικών στοιχείων εντός της GridBagLayout:

  1. Επιλέξτε το συστατικό στοιχείο που θέλετε να προσαρμόσετε εντός της GridBagLayout και πατήστε το κουμπί της γραμμής εργαλείων "Προσαρμογή διάταξης" Κουμπί γραμμής εργαλείων προσαρμογής διάταξης
    Υπόδειξη: Επιλέξτε πολλαπλά συστατικά στοιχεία για να ορίσετε πανομοιότυπους περιορισμούς αγκύρωσης, συμπλήρωσης και εσωτερικών περιγραμμάτων σε πολλαπλά συστατικά στοιχεία ταυτόχρονα.
    Το παράθυρο "Προσαρμογή διάταξης" εμφανίζει τις τιμές θέσης αγκύρωσης, εσωτερικών περιγραμμάτων, σημείων συμπλήρωσης, κάλυψης, γεμίσματος και βάρους των επιλεγμένων συστατικών στοιχείων στη GridBagLayout. Εάν επιλέγονται πολλαπλά συστατικά στοιχεία, η τιμή αγκύρωσης και συμπλήρωσης εμφανίζουν μόνο ένα πατημένο κουμπί εάν όλα τα συστατικά στοιχεία έχουν την ίδια τιμή. Οι τιμές εσωτερικών περιγραμμάτων που εμφανίζονται είναι αυτές που ορίστηκαν για το τελευταίο συστατικό στοιχείο που επιλέχθηκε.

    Παράθυρο προσαρμογής διάταξης

  2. Για την προσαρμογή της θέσης αγκύρωσης του συστατικού στοιχείου, πατήστε ένα από τα κουμπιά πυξίδας:
    • Βορειοδυτική αγκύρωση - Τοποθετεί το συστατικό στοιχείο στην πάνω αριστερή γωνία του κελιού πλέγματος.
    • Βόρεια αγκύρωση - Τοποθετεί το συστατικό στοιχείο κεντρικά στην αρχή του κελιού πλέγματος.
    • Βορειοανατολική αγκύρωση - Τοποθετεί το συστατικό στοιχείο στην πάνω δεξιά γωνία του κελιού πλέγματος.
    • Δυτική αγκύρωση - Τοποθετεί το συστατικό στοιχείο αριστερά και στο μέσο του κελιού πλέγματος.
    • Αγκύρωση κέντρου - Τοποθετεί το συστατικό στοιχείο στο κέντρο του κελιού πλέγματος.
    • Ανατολική αγκύρωση - Τοποθετεί το συστατικό στοιχείο δεξιά και στο μέσο του κελιού πλέγματος.
    • Νοτιοδυτική αγκύρωση - Τοποθετεί το συστατικό στοιχείο στην κάτω αριστερή γωνία του κελιού πλέγματος.
    • Νότια αγκύρωση - Τοποθετεί το συστατικό στοιχείο κεντρικά στο τέλος του κελιού πλέγματος.
    • Νοτιοανατολική αγκύρωση - Τοποθετεί το συστατικό στοιχείο στην κάτω δεξιά γωνία του κελιού πλέγματος.
  3. Για την προσαρμογή του γεμίσματος μεταξύ περιγράμματος κελιού πλέγματος και συστατικού στοιχείου, εισάγετε μια τιμή (σε εικονοστοιχεία) για κάθε ένα από τα ακόλουθα πεδία:
    • Αρχή - Ορίζει το εσωτερικό περίγραμμα ή γέμιση πάνω από το συστατικό στοιχείο.
    • Αριστερά - Ορίζει το εσωτερικό περίγραμμα ή γέμιση αριστερά από το συστατικό στοιχείο.
    • Τέλος - Ορίζει το εσωτερικό περίγραμμα ή γέμιση κάτω από το συστατικό στοιχείο.
    • Δεξιά - Ορίζει το εσωτερικό περίγραμμα ή γέμιση δεξιά από το συστατικό στοιχείο.
  4. Για την προσαρμογή του εύρους του γεμίσματος του κελιού πλέγματος, πατήστε σε ένα ή και τα δύο κουμπιά γεμίσματος:
    • Οριζόντιο γέμισμα - Προσδιορίζει ότι το συστατικό στοιχείο πρέπει να καταλαμβάνει όλο το πλάτος του κελιού πλέγματος.
    • Κάθετο γέμισμα - Προσδιορίζει ότι το συστατικό στοιχείο πρέπει να καταλαμβάνει όλο το ύψος του κελιού πλέγματος.
  5. Για τον προσδιορισμό του αριθμού των κελιών που θα καλύψει το συστατικό στοιχείο, εισάγετε τιμές για το "Πλάτος" και το "Ύψος":
    • Πλάτος - Προσδιορίζει τον αριθμό στηλών που καταλαμβάνει το συστατικό στοιχείο (ο άξονας X).
    • Ύψος - Προσδιορίζει τον αριθμό γραμμών που καταλαμβάνει το συστατικό στοιχείο (ο άξονας Υ).
  6. Για τον προσδιορισμό του εσωτερικού γεμίσματος για συστατικό στοιχείο, εισάγετε τιμές (σε εικονοστοιχεία) για τα ακόλουθα κελιά:
    • X -
    • Y -
  7. Για τον προσδιορισμό του τρόπου κατανομής του επιπλέον χώρου σε γραμμές ή στήλες, εισάγετε τιμές (σε σχετικές αριθμητικές τιμές, σε σχέση με τα βάρη που προσδιορίζονται για άλλα συστατικά στοιχεία) για τα πεδία "X" και "Y".

    Η λειτουργία διαχείρισης GridBagLayout υπολογίζει το βάρος των στηλών και γραμμών να είναι το μέγιστο weightx και weighty όλων των συστατικών στοιχείων σε μια γραμμή και στήλη, αντίστοιχα. Εάν η διάταξη που προκύπτει είναι μικρότερη από το χώρο που πρέπει να γεμίσει, ο επιπλέον χώρος στη διάταξη θα κατανεμηθεί στις στήλες και τις γραμμές κατ' αναλογία των προσδιορισμένων βαρών. Ένα κελί με βάρος μηδέν δεν παίρνει επιπλέον χώρο.

    Για παράδειγμα, εάν ένα συστατικό στοιχείο στη στήλη 1, γραμμή 1 έχει βάρος X με τιμή 3, και ένα συστατικό στοιχείο στη στήλη 2, γραμμή 1 έχει βάρος X με τιμή 1, το σύνολο των τιμών βάρους X στη γραμμή 1 ανέρχεται σε 4, και η στήλη 1 θα λάβει 75% του επιπλέον χώρου όταν γίνει η κατανομή του.

    • X - Προσδιορίζει το βάρος για κατανομή επιπλέον χώρου μεταξύ στηλών.
    • Υ - Προσδιορίζει το βάρος για κατανομή επιπλέον χώρου μεταξύ γραμμών.
Σχετικές εργασίες
Προσθήκη ή μετακίνηση συστατικών στοιχείων εντός της GridBagLayout
Κάλυψη συστατικών στοιχείων στα κελιά GridBagLayout

(C) Copyright IBM Corporation 1999, 2004. Με την επιφύλαξη παντός δικαιώματος.