jToolBar x Resolução da Tela

6 respostas
Cavalo_de_Troia

Galera, pesquisei no forum e não encontrei nada que me ajudasse referente a esse problema.
É o seguinte, tenho um tela principal (JFrame + DesktopPane + menuBar + JToolBar), nessa tela adicionei o componente JToolBar e dentro do JToolBar adicionei os JButton, na resolução do meu micro 1024 x 768, o componente aparece perfeito, entretanto, quando rodo o sistema em outro micro/monitor o componente não acompanha o tamanho da tela (Resolução) ficando menor.
Preciso que o componente dimencione automaticamente independente da resolução usada.
Tentei ilustrar o problema na figura abaixo, caso alguém tenha passado por isso e puder compartilhar a solução para o problema…desde já eu agradeço.

6 Respostas

ViniGodoy

Por acaso você está usando setLayout(null)?

Pode colocar o código onde vc adiciona sua toolbar no seu form?

T

Coloca ae o código fonte da sua classe para que possamos te ajudar

Cavalo_de_Troia

ViniGodoy e thiagow1 , obrigado por responder!
Então, não tenho muita experiencia com a linguagem, desenvolvo a parte grafica com Netbeans, segue abaixo as linhas que define o jToolBar:

jToolBarMain.setFloatable(false);
jToolBarMain.setRollover(true);

jToolBarMain.setBounds(0, 0, 1030, 60);
desktopPaneTelaMain.add(jToolBarMain, javax.swing.JLayeredPane.DEFAULT_LAYER);

Agradeço!

ViniGodoy

Bom, o problema está em não entender o que faz. Você precisa estudar sobre os layout managers do Swing e parar de usar o setBounds. Com esse comando, você especifica um tamanho fixo para os componentes. Fácil à princípio, mas um inferno quando você decide que suas janelas devem mudar de tamanho.

Procure sobre BorderLayout, FlowLayout, GridBagLayout. Ou use o MigLayout.
Ou, informe-se melhor como o Matisse (editor do netbeans) funciona.

Cavalo_de_Troia

ViniGodoy, mais uma vez obrigado pela atenção!
Acho que não me expressei direito na última mensagem, conhecimento sobre os gerenciadores de layout “eu tenho”, optei por usar o netbeans, devido a praticidade e curto prazo para entrega do sistema.
A falta de experiência está justamente em não ter vivenciado algumas situações em etapas de desenvolvimento, como esta por exemplo.

Mesmo assim continuarei pesquisando, vou substituir o setBounds, depois posto o resultado.

Abç

ViniGodoy

Oi,

Não estou falando para você fazer coisas “no braço”. Mas você deve entender exatamente que gerenciadores o netbeans está usando, ou como o gerenciador padrão dele funciona. Basicamente, você só precisa ancorar a toolbar nas laterais do seu componente.

Criado 21 de janeiro de 2010
Ultima resposta 22 de jan. de 2010
Respostas 6
Participantes 3