Qual o melhor Layout Manager neste caso?

5 respostas
brunohansen

Fala galera,

Antes de tudo desculpa ae, mas não saco nada de apresentação!
Queria pelo menos um ponto por onde começar.

O problema é o seguinte:

Tenho que apresentar várias “telas” de videos em um panel. Essas telas podem ser exibidas organizadas de varias formas e cada tela pode ter um tamanho diferente em cada organização. Cada tela deve respeitar uma proporção (4:3, 16:9 etc…).

O panel, onde as “telas” dos videos são colocados, pode ser redimencionado. Só que qdo o redimencionamento acontecer as telas devem ser redimencionadas tambem respeitando a proporção (4:3 etc…) e sua organização.

Eu ia fazer tudo isso na mão os calculos de redimencionamento e proporção a reorganização e etc… Porém em java temos os Layouts managers será que não tem um que faça isso? Ou que me ajude a fazer isso?

Alguem pode me dar dicas?

Enquanto isso vou lendo o The JFC Swing Tutorial…

5 Respostas

T

Você pode criar seu LayoutManager, por incrível que pareça é mais fácil que você imagina.

brunohansen

Vc pode me recomendar algum material para eu criar o meu? Que demosntre como seja fácil?

[]s Valews

T

http://www.javafaq.nu/java-bookpage-15-5.html (usei algo parecido em um projeto)

http://java.sun.com/docs/books/tutorial/uiswing/layout/custom.html (mais fraco e mais simples)

http://www.ibm.com/developerworks/library/us-custom/?dwzone=usability (explica o que é cada método de LayoutManager que você teria de implementar)

Mesmo em casos complexos, no entanto, é suficiente implementar apenas preferredLayoutSize e layoutContainer (você pode implementar minimumLayoutSize retornando preferredLayoutSize, ou vice-versa).

brunohansen

No meu caso acho que não é suficiente só implementar esses métodos!

O pocisionamento e tamanho das telas de video e até a quantidade de telas de telas que serão exibidas é muito flexível.

Por isso decidi basear a organização em x, y, height e width. Achei mais prático criar array de retangulos do que fazer adições complexas em um container.

Até ontém que não tinha a necessidade de Scale tudo isso era muito prático, eu podia disponibilizar várias organizações de telas so criando simples arrays de retangulos.

Hoje mesmo com a necessidade de Scale não queria perder essa praticidade de criar organizações de telas.

Meu layout manager vai ter que definir não só a dimensão como reposicionar os componentes da interface. Por este motivo não me basta apenas implementar os métodos citados.

Mas ainda vou implementar um layout manager, só ainda não sei direito como fazer para ele gerenciar o posicionamento!

Você tem alguma idéia?

Ainda continuo lendo os links que vc me passou…

[]s brigadao pela ajuda

T

O método layoutContainer é o que você normalmente trata com mais carinho, já que é o usado para reposicionar os elementos da interface.

Criado 3 de julho de 2007
Ultima resposta 4 de jul. de 2007
Respostas 5
Participantes 2