Τι είναι μια στοίβα; Τι είναι η ροή; --Το Manager Layout Shoes

click fraud protection

Για την αποτελεσματική χρήση οποιουδήποτε GUI toolkit, πρέπει να καταλάβετε τον διαχειριστή διάταξης (ή τον διαχειριστή γεωμετρίας). Στο Qt, έχετε HBoxes και VBoxes, στο Tk έχετε τον Packer και στα Shoes έχετε στοίβες και ροές. Ακούγεται κρυπτό, αλλά διαβάστε - είναι πολύ απλό.

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

Σημειώστε ότι όταν λέγεται ότι τα κουμπιά είναι "μέσα" της στοίβας, αυτό σημαίνει ότι δημιουργήθηκαν μέσα στο μπλοκ που πέρασε στη στοίβα μέθοδος. Στην περίπτωση αυτή, τα τρία κουμπιά δημιουργούνται ενώ μέσα στο μπλοκ μεταφέρονται στη μέθοδο στοίβας, έτσι είναι "μέσα" της στοίβας.

Μια ροή συσκευάζει τα πράγματα οριζόντια. Αν δημιουργηθούν τρία κουμπιά μέσα σε μια ροή, θα εμφανιστούν δίπλα στην άλλη.

instagram viewer

Υπάρχει ένα ακόμα σημαντικό πράγμα που πρέπει να κατανοήσουμε για τις ροές. Αν εξαντλήσετε το χώρο οριζόντια, τα παπούτσια δεν θα δημιουργήσουν ποτέ μια οριζόντια γραμμή κύλισης. Αντ 'αυτού, τα παπούτσια θα δημιουργήσουν τα στοιχεία κάτω από την "επόμενη γραμμή" της εφαρμογής. Είναι σαν να φτάνετε στο τέλος μιας γραμμής σε έναν επεξεργαστή κειμένου. Ο επεξεργαστής κειμένου δεν δημιουργεί μια γραμμή κύλισης και σας αφήνει να πληκτρολογείτε τη σελίδα μακριά, αλλά τοποθετεί τις λέξεις στην επόμενη γραμμή.

Μέχρι τώρα, δεν έχουμε δώσει καμία διάσταση όταν δημιουργούμε στοίβες και ροές. απλώς έλαβαν τόση χώρο όπως χρειάζονταν. Ωστόσο, οι διαστάσεις μπορούν να δοθούν με τον ίδιο τρόπο που δίδονται οι διαστάσεις Shoes.app κλήση μεθόδου. Αυτό το παράδειγμα δημιουργεί μια ροή που δεν είναι τόσο μεγάλη όσο το παράθυρο και προσθέτει κουμπιά σε αυτό. Επίσης, δίδεται στυλ περιγράμματος σε αυτό για να προσδιορίσει οπτικά τη ροή.

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

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

Εάν είστε προγραμματιστής Ιστού, μπορεί να παρατηρήσετε ότι αυτό είναι πολύ παρόμοιο με το μηχανισμό διάταξης CSS. Αυτό είναι σκόπιμο. Τα παπούτσια επηρεάζονται σε μεγάλο βαθμό από τον ιστό. Στην πραγματικότητα, ένα από τα βασικά οπτικά στοιχεία στα Παπούτσια είναι το "Link" και μπορείτε ακόμη να οργανώσετε τις εφαρμογές Shoes σε "σελίδες".

Σε αυτό το παράδειγμα, δημιουργείται μια ροή που περιέχει 3 στοίβες. Αυτό θα δημιουργήσει μια διάταξη 3 στηλών, με τα στοιχεία σε κάθε στήλη να εμφανίζονται κατακόρυφα (επειδή κάθε στήλη είναι μια στοίβα). Το πλάτος των στοίβων δεν είναι πλάτος εικονοστοιχείων όπως στα προηγούμενα παραδείγματα, αλλά μάλλον 33%. Αυτό σημαίνει ότι κάθε στήλη θα πάρει το 33% του διαθέσιμου οριζόντιου χώρου στην εφαρμογή.

instagram story viewer