Galera, como fazer para que quando o usuario maximize o JFrame os JLabels que estão dentro dele se expandam para o local devido?
JLabel
8 Respostas
Oi,
Utilizando um gerenciador de layout.
Tchauzin!
Se voce esta usando um LayoutManager que tem suporte a isso, apenas aumentando a tela ele ja faria isso.
Como voce coloca esse componente na tela?
Eu estou usando o layout de desenho livre do netbeans.
Tem como eu fazer isto com ele?
Eu não uso NetBeans então não posso te afirmar isso.
Mas acredito que esse “desenho livre”, seja o NullLayout, com ele é impossivel voce fazer isso que deseja.
O “Desenho livre” é o Matisse (a.k.a. GroupLayout).
Esse layout (na verdade, os outros também) não prevê que os JLabels tenham as fontes ampliadas de acordo com o tamanho da tela.
Ah é… true… nenhum gerenciador altera o tamanho da fonte usada, apenas o tamanho do componente.
Voce só notaria a diferença que eles fazem se colocar uma Border no seu componente e ver até onde ele vai.
Galera como não tava acontecendo nenhuma mudanca eu coloquei os JLabels dentro de um JDesktopPane e agora o que acontece é que com o Border o JDesktopane cresce junto com o JFrame, porém o que há dentro do JDeskTop fica no mesmo lugar.
NEste caso teria alguma solução mais simples, já que os Labels estão dentro do painel???
Galera como não tava acontecendo nenhuma mudanca eu coloquei os JLabels dentro de um JDesktopPane e agora o que acontece é que com o Border o JDesktopane cresce junto com o JFrame, porém o que há dentro do JDeskTop fica no mesmo lugar.
NEste caso teria alguma solução mais simples, já que os Labels estão dentro do painel???
Pare de tentar xunxar e comece a estudar logo os layout managers:
http://netbeans.org/kb/docs/java/quickstart-gui.html
http://netbeans.org/kb/docs/java/quickstart-gui-legend.html
http://download-llnw.oracle.com/javase/tutorial/uiswing/layout/using.html
http://www.miglayout.com/QuickStart.pdf
Dentro do JDesktopPane não deveria ir nenhum outro componente, a não ser o JInternalFrame.