O que é uma pilha? O que é um fluxo? --O Gerente de Layout de Sapatos

Para usar efetivamente qualquer GUI kit de ferramentas, é necessário entender seu gerente de layout (ou gerente de geometria). No Qt, você tem HBoxes e VBoxes, em Tk você tem o Packer e em Shoes você tem pilhas e fluxos. Parece enigmático, mas continue lendo - é muito simples.

Uma pilha faz exatamente como o nome indica. Eles empilham as coisas verticalmente. Se você colocar três botões em uma pilha, eles serão empilhados verticalmente, um em cima do outro. Se você ficar sem espaço na janela, uma barra de rolagem aparecerá no lado direito da janela para permitir a visualização de todos os elementos na janela.

Observe que quando se diz que os botões estão "dentro" da pilha, isso significa apenas que eles foram criados dentro do bloco passado para a pilha método. Nesse caso, os três botões são criados enquanto o bloco é passado para o método de pilha; portanto, eles estão "dentro" da pilha.

Um fluxo embala as coisas horizontalmente. Se três botões forem criados dentro de um fluxo, eles aparecerão próximos um do outro.

instagram viewer

Há mais uma coisa importante a entender sobre fluxos. Se você ficar sem espaço horizontalmente, o Shoes nunca criará uma barra de rolagem horizontal. Em vez disso, o Shoes criará os elementos mais abaixo na "próxima linha" do aplicativo. É como quando você chega ao final de uma linha em um processador de texto. O processador de texto não cria uma barra de rolagem e permite que você continue digitando fora da página; em vez disso, coloca as palavras na próxima linha.

Até agora, não damos nenhuma dimensão ao criar pilhas e fluxos; eles simplesmente ocuparam o espaço necessário. Contudo, as dimensões podem ser dadas da mesma maneira que as dimensões são atribuídas ao Shoes.app chamada de método. Este exemplo cria um fluxo que não é tão largo quanto a janela e adiciona botões a ela. Também é dado um estilo de borda para identificar visualmente onde está o fluxo.

Você pode ver pela borda vermelha que o fluxo não se estende até a borda da janela. Quando o terceiro botão será criado, não haverá espaço suficiente para que o Shoes passe para a próxima linha.

Fluxos e pilhas não contêm apenas os elementos visuais de um aplicativo, eles também podem conter outros fluxos e pilhas. Ao combinar fluxos e pilhas, você pode criar layouts complexos de elementos visuais com relativa facilidade.

Se você é desenvolvedor da Web, pode observar que isso é muito semelhante ao mecanismo de layout CSS. Isso é intencional. O Shoes é fortemente influenciado pela Web. De fato, um dos elementos visuais básicos do Shoes é o "Link" e você pode até organizar os aplicativos do Shoes em "páginas".

Neste exemplo, um fluxo contendo 3 pilhas é criado. Isso criará um layout de 3 colunas, com os elementos em cada coluna sendo exibidos verticalmente (porque cada coluna é uma pilha). A largura das pilhas não é uma largura de pixel, como nos exemplos anteriores, mas sim 33%. Isso significa que cada coluna ocupará 33% do espaço horizontal disponível no aplicativo.

instagram story viewer