Neste tópico, falarei a respeito do gerenciador de layout FXVerticalFrame. A princípio, eu achei que seria demais um tópico só para ele, por ser bastante semelhante ao FXHorizontalFrame. Pensei então em apenas tratá-lo rapidamente dentro deste tópico. Mas percebi que eram temas muito diferentes, e apenas iria deixar o tópico mais extenso.
Resolvi, então, tratá-lo em um tópico exclusivo. Aproveito, ainda, para falar de mais algumas opções de layout.
Vamos lá, então.
Exemplo
Como eu utilizei esse gerenciador em um tópico anterior, vou reaproveitá-lo aqui. São apenas dois botões.
Primeiramente, é preciso criar o gerenciador:
Aqui, eu crio um FXVerticalFrame que se expandirá por toda a janela em ambas as direções (LAYOUT_FILL). FRAME_NORMAL significa que ele terá uma borda grossa e rebaixada. As opções de borda serão discutidas em detalhes futuramente.
Agora eu crio os botões:
O primeiro botão será posicionado junto à borda superior (por padrão), e se expandirá pelo eixo horizontal.
Já o segundo tem apenas uma diferença em relação ao primeiro (em opções de layout): ele será colocado junto à borda inferior (LAYOUT_BOTTOM).
Resultado
Neste tópico, há um vídeo mostrando o resultado do tratamento dos eventos.
No vídeo, a janela está com o tamanho mínimo, ou seja, os dois botões aparecem juntos um do outro. Agora vejam o que acontece quando se redimensiona a janela:
Conclusão
Conforme eu falei no início deste tópico, o FXVerticalFrame é bastante semelhante ao FXHorizontalFrame. Desta forma, tudo o que foi discutido no no outro tópico vale aqui também.
Sendo assim, deixo para a curiosidade do leitor fazer testes incluindo novos botões e utilizando as opções de layout e empacotamento já discutidos.
Um abraço e até a próxima.
Resolvi, então, tratá-lo em um tópico exclusivo. Aproveito, ainda, para falar de mais algumas opções de layout.
Vamos lá, então.
Exemplo
Como eu utilizei esse gerenciador em um tópico anterior, vou reaproveitá-lo aqui. São apenas dois botões.
Primeiramente, é preciso criar o gerenciador:
23 FXVerticalFrame *contents =
24 new FXVerticalFrame(this, LAYOUT_FILL|FRAME_NORMAL);
Aqui, eu crio um FXVerticalFrame que se expandirá por toda a janela em ambas as direções (LAYOUT_FILL). FRAME_NORMAL significa que ele terá uma borda grossa e rebaixada. As opções de borda serão discutidas em detalhes futuramente.
Agora eu crio os botões:
26 new FXButton(contents, "&Hello FOX!", NULL, this, ID_HELLO,
27 BUTTON_NORMAL|LAYOUT_FILL_X);
28
29 new FXButton(contents, "&Goodbye, FOX!", NULL, a, FXApp::ID_QUIT,
30 BUTTON_NORMAL|LAYOUT_FILL_X|LAYOUT_BOTTOM);
O primeiro botão será posicionado junto à borda superior (por padrão), e se expandirá pelo eixo horizontal.
Já o segundo tem apenas uma diferença em relação ao primeiro (em opções de layout): ele será colocado junto à borda inferior (LAYOUT_BOTTOM).
Resultado
Neste tópico, há um vídeo mostrando o resultado do tratamento dos eventos.
No vídeo, a janela está com o tamanho mínimo, ou seja, os dois botões aparecem juntos um do outro. Agora vejam o que acontece quando se redimensiona a janela:
Conclusão
Conforme eu falei no início deste tópico, o FXVerticalFrame é bastante semelhante ao FXHorizontalFrame. Desta forma, tudo o que foi discutido no no outro tópico vale aqui também.
Sendo assim, deixo para a curiosidade do leitor fazer testes incluindo novos botões e utilizando as opções de layout e empacotamento já discutidos.
Um abraço e até a próxima.
Um comentário:
olá edgar,
Estou eu aqui fazendo mais um comentário ( pedido rsrs).
Teria a possibilidade de tu colocar um post no blog falando dessa infinidade de FRAME_alguma-coisa.
Exemplo, tem o FRAME_NORMAL, FRAME_GROOVE, FRAME_SUNKEN...
Eu obviamente não se a função de nenhum deles. Só sei que alguns deles tem a ver com bordas (FRAME_RIDGE).
Aguardando
Abraços
Valeu
Postar um comentário