Bom, eu fiz um programa la em casa, no meu pc … e o monitor é 17’’ … ai depois vim aqui no trampo … e o monitor é 15’’ … e o programa ficou mto grande … alguem tem alguma ideia de como fazer redimensionar automaticamente a janela de acordo com o monitor que estou usando ?
[quote=ViniGodoy]1. Não utilize o NullLayout. Use o GridBagLayout.
2. Deixe o usuário escolher o tamanho da janela.
Se precisar fazer no braço, você sempre pode recorrer ao:
Para obter o objeto do tipo DisplayMode, que descreve a resolução usada por seu usuário.[/quote]
e ai Vinigodoy blz ae ?
entao cara, eu nao to usando null layout … pq é o seguinte: tenho duas classes para a janela principal: Janela e DesignJanela … a classe Janela mostra os jmenu’s e permite que a janela principal seja exibida, e a DesignJanela retorna os botoes, abas, para a classe Janela, sendo exibidos … e é nessa classe (DesignJanela) que eu fiz o gridbaglayout …
enfim, pelo que eu entendi, esse codigo que vc me passou pega a resoluçao do monitor do usuario ? é isso ? mas e depois ? como faço ? help ae
Quando eu preciso fazer uma tela que deve rodar em resoluções diferentes eu uso o netbeans, habilitando o redimensionamento vertical e horizontal da janela… No começo foi meio chato, mas com o tempo vc pega o jeito.
Seguinda a idéia do ViniGodoy, você pode setar o tamanho de cada componente da GUI como uma função da resolução da tela. Aí na criação da janela, você faz os cálculos… Acho que fica um pouco mais trabalhoso que fazer com o netbeans mas o resultado pode ser melhor e além disso, se você fizer um negócio organizado e bem planejado, pode usar isso pra qualquer tela…
De cada componente não. Só da janela. O Gridbaglayout se encarrega do resto.
Isso não é exclusividade só do Netbeans, mas um recurso do Java.
O mesmo vale para as propriedades horizontal e vertical. Lembre-se: O netbeans é apenas uma IDE, ou seja, um editor de textos inteligente, próprio para o Java. A linguagem mesmo não muda, então os recursos disponíveis também não.
hagar, vlw pela sugestao … mas estou programando no eclipse, e nao curto mto o netbeans … ai é um problema
e mais: vc nao tem algum exemplo de como fazer de acordo com a ideia do ViniGodoy ? alguem poderia me dar um exemplo sobre como fazer isso ?
[quote=ViniGodoy]Mas aí vc está maximizando a janela!!!
Usa no state normal e só define um tamanho para a janela, como praticamente qualquer aplicação faz.[/quote]
humm … fiz o seguinte
ate que funciona … mas qdo a janela abre, ela fica minimizada o maximo possivel … como faço pra deixar num tamanho correto ? so usar o setSize ? afinalm setState pra que serve ?
O setState e o setExtendedState servem para maximizar ou minimizar a janela. Normal é o estado padrão, você não precisa usar o comando nesse caso.[/quote]
blz … vlw ^^
so que infelizmente surgiu outro problema … os componentes do jframe (abas, panels, botoes) nao acompanham o tamanho da janela … ou seja, se eu diminuir a janela, os componentes continuarao a mesma coisa… ai complicou mesmo aieuhaeuiha … eu sei que tem que usar o gridbaglayout … mas como eu disse: eu usei o gridbaglayout … tenho duas classes para a janela principal, Janela e DesignJanela … a classe Janela mostra os jmenu’s e permite que a janela principal seja exibida, e a DesignJanela retorna os botoes, abas, panels, para a classe Janela, sendo exibidos la… e é na classe DesignJanela que eu fiz o gridbaglayout …
é por isso que nao to entendendo pq os componentes nao acompanham o tamanho da janela …
De cada componente não. Só da janela. O Gridbaglayout se encarrega do resto.
Isso não é exclusividade só do Netbeans, mas um recurso do Java.
O mesmo vale para as propriedades horizontal e vertical. Lembre-se: O netbeans é apenas uma IDE, ou seja, um editor de textos inteligente, próprio para o Java. A linguagem mesmo não muda, então os recursos disponíveis também não.[/quote]
Eu só disse que quando preciso fazer esse tipo de aplicação faço com o NetBeans porque considero mais fácil, e não que esse é um recurso exclusivo do netbeans. Se o que escrevi sugeriu isso, me desculpem…
E o gridbaglayout se encarrega de redimensionar os componentes sim, mas se precisar fazer sem gerenciador de layout, tem que fazer componente por componente…