Qu'est-ce qu'une pile? Qu'est-ce qu'un flux? --Le gestionnaire de disposition des chaussures

Pour utiliser efficacement GUI boîte à outils, vous devez comprendre son gestionnaire de mise en page (ou gestionnaire de géométrie). En Qt, vous avez des HBox et VBox, en Tk vous avez le Packer et en Shoes vous avez piles et flux. Cela semble énigmatique mais lisez la suite - c'est très simple.

Une pile fait comme son nom l'indique. Ils empilent les choses verticalement. Si vous mettez trois boutons dans une pile, ils seront empilés verticalement, l'un au-dessus de l'autre. Si vous manquez d'espace dans la fenêtre, une barre de défilement apparaît sur le côté droit de la fenêtre pour vous permettre de visualiser tous les éléments de la fenêtre.

Notez que quand on dit que les boutons sont "à l'intérieur" de la pile, cela signifie simplement qu'ils ont été créés à l'intérieur du bloc passé à la pile méthode. Dans ce cas, les trois boutons sont créés à l'intérieur du bloc transmis à la méthode de pile, ils sont donc "à l'intérieur" de la pile.

Un flux emballe les choses horizontalement. Si trois boutons sont créés à l'intérieur d'un flux, ils apparaissent l'un à côté de l'autre.

instagram viewer

Il y a encore une chose importante à comprendre à propos des flux. Si vous manquez d'espace horizontalement, Shoes ne créera jamais de barre de défilement horizontale. Au lieu de cela, Shoes créera les éléments plus bas sur la "ligne suivante" de l'application. C'est comme lorsque vous atteignez la fin d'une ligne dans un traitement de texte. Le traitement de texte ne crée pas de barre de défilement et vous permet de continuer à taper la page, mais place les mots sur la ligne suivante.

Jusqu'à présent, nous n'avons donné aucune dimension lors de la création de piles et de flux; ils ont simplement pris autant d'espace que nécessaire. Cependant, les dimensions peuvent être données de la même manière que les dimensions Shoes.app appel de méthode. Cet exemple crée un flux qui n'est pas aussi large que la fenêtre et y ajoute des boutons. Un style de bordure lui est également attribué pour identifier visuellement où se trouve le flux.

Vous pouvez voir par la bordure rouge que le flux ne s'étend pas jusqu'au bord de la fenêtre. Lorsque le troisième bouton va être créé, il n'y a pas assez de place pour lui, alors Shoes se déplace vers la ligne suivante.

Les flux et les piles ne contiennent pas seulement les éléments visuels d'une application, ils peuvent également contenir d'autres flux et piles. En combinant des flux et des piles, vous pouvez créer des dispositions complexes d'éléments visuels avec une relative facilité.

Si vous êtes un développeur Web, vous remarquerez peut-être qu'il est très similaire au moteur de présentation CSS. C'est intentionnel. Les chaussures sont fortement influencées par le Web. En fait, l'un des éléments visuels de base de Shoes est le "Lien" et vous pouvez même organiser les applications de Shoes en "pages".

Dans cet exemple, un flux contenant 3 piles est créé. Cela créera une disposition à 3 colonnes, avec les éléments de chaque colonne affichés verticalement (car chaque colonne est une pile). La largeur des piles n'est pas une largeur de pixel comme dans les exemples précédents, mais plutôt 33%. Cela signifie que chaque colonne occupera 33% de l'espace horizontal disponible dans l'application.