| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/08/2008 15:22:02
|
danielpk7
Thread.start()
Membro desde: 03/07/2007 20:44:15
Mensagens: 33
Offline
|
Eu sempre trabalhei com eclipse, porém comecei a trabalhar com swing e acabei tendo q usar o netbeans, no inico estranhei um pouco o editor de código dele mas agora ja me acostumei, porém tem algo q não me acostumo é com o gerador de Forms dele q, pelo q eu sei é o melhor q tem porém eu não me acerto com ele, talvez eu q não saiba usar direito. Bom meu problema é o seguinte:
- Quando eu monto uma tela com poucos campos, campos do mesmo tamanho e alinhados um em baixo do outro vai tranquilo, porém qdo quero colocar vários componentes numa mesma linha ele sempre quer alinhar com a linha de baixo ou a de cima, parece q ele ancora esses campos aos das linhas proximas e qdo tu meche na posição de um bagunça (literalmente) todos os outros. Daí tenho q realinahr todos novamento o q nem sempre é fácil. No fim demoro mais tempo montando telas do q programando, isso não pode ser normal, certamente deve ter um jeito mais fácil de fazer isso. Eu utilizo o Netbeans 6.1, nos forms eu uso o layout Free Design.
Eu ja pensei em algumas alternativas:
- Uma seria utilizar o AbsoluteLayout e setar os componentes pixel a pixel, dara mais trabalho porém ao menos vou ter a garantia q eles não vão sair todos de posição ao mecher no posicionamento de um deles.
- A outra seria colocar vários JPanels no form do tamanho da largura do form e a altura do tamanho de um jTextField por exemplo, cada um representando uma linha, daí eu coloco os componentes dentro desses JPanels ele ira ancorar os JPanels um com o outro e não os outros componentes assim poderei mecher no posicionamento horizontal deles sem alterar os demais componentes da tela.
Alguem tem alguma idéia melhor pra me ajudar nesse problema?
Desde ja agradeço!
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/08/2008 15:42:23
|
Hamses
JavaBaby
Membro desde: 28/03/2006 13:23:50
Mensagens: 85
Offline
|
Danielpk7
Eu Ja utilizei o NetBeans em dois projetos desktop e acabei me adptando ao jeito do NetBeans organizar os componentes.
Uma dica que eu possa dar para talvez solucionar seu problema é você usar o NullLayout do Form assim o Netbeans permite você alinhar seus componentes da forma que quiser.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/08/2008 15:53:58
|
danielpk7
Thread.start()
Membro desde: 03/07/2007 20:44:15
Mensagens: 33
Offline
|
Hamses wrote:Danielpk7
Eu Ja utilizei o NetBeans em dois projetos desktop e acabei me adptando ao jeito do NetBeans organizar os componentes.
Uma dica que eu possa dar para talvez solucionar seu problema é você usar o NullLayout do Form assim o Netbeans permite você alinhar seus componentes da forma que quiser.
Boa tarde Hamses
Eu ja utilizei o Null Layout porém ele é parecido com o Absolute Layout, no sentido deu ter q alinhar pixel a pixel, até, pra te falar bem a verdade eu não sei a real diferença desses dois layouts, tenho até q dar uma pesquisada nisso.
Obrigado mesmo assim.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/08/2008 16:00:31
|
ivo costa
JavaEvangelist
![[Avatar]](/images/avatar/2ab0ebde9cc0cd85fc47ce045d440caf.png)
Membro desde: 06/11/2007 12:07:34
Mensagens: 493
Localização: Porto Alegre - RS
Offline
|
O problema do Null e do Absolute é que se o usuário diminuir a tela os componentes ficam cortados, e se ele aumentar os componentes não se mechem.
O "Free Design" (GroupLayout) é bom mas tbm não serve pra ser usado sempre, o melhor é intercalar com panels que usam o melhor de cada layout na hora certa.
|
Eu sonho com um mundo melhor, onde galinhas que atravessam a rua não serão questionadas pelos seus motivos.
Formate o seu código usando as tags [code] http://www.guj.com.br/posts/list/50115.java
Faça perguntas inteligentes |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/08/2008 16:19:02
|
Hamses
JavaBaby
Membro desde: 28/03/2006 13:23:50
Mensagens: 85
Offline
|
Mas você pode fazer o seguinte bloquear que o usuario redimencione a tela
no construtor do JFrame você usa o seguinte metodo que não deixa ele redimencionar a tela
setResizable(false);
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/08/2008 16:30:55
|
ivo costa
JavaEvangelist
![[Avatar]](/images/avatar/2ab0ebde9cc0cd85fc47ce045d440caf.png)
Membro desde: 06/11/2007 12:07:34
Mensagens: 493
Localização: Porto Alegre - RS
Offline
|
Hamses wrote:Mas você pode fazer o seguinte bloquear que o usuario redimencione a tela
no construtor do JFrame você usa o seguinte metodo que não deixa ele redimencionar a tela
setResizable(false);
Nesse caso vc está usando o Gambi Desing Pattern BulletProof
Que consiste em esconder funcionalidades do usuário para fugir de possíveis erros da aplicação.
desciclo.pedia.ws/wiki/Gambi_Design_Patterns
|
Eu sonho com um mundo melhor, onde galinhas que atravessam a rua não serão questionadas pelos seus motivos.
Formate o seu código usando as tags [code] http://www.guj.com.br/posts/list/50115.java
Faça perguntas inteligentes |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/08/2008 16:31:39
|
danielpk7
Thread.start()
Membro desde: 03/07/2007 20:44:15
Mensagens: 33
Offline
|
Hamses wrote:Mas você pode fazer o seguinte bloquear que o usuario redimencione a tela
no construtor do JFrame você usa o seguinte metodo que não deixa ele redimencionar a tela
setResizable(false);
Eu sempre deixo essa opção desabilitada, meu problema, minhas telas tem aquele tamanho padrão e o usuario não pode redimencionar e nem maximizar, pois uso JInternalFrame dentro de uma tela principal e essa sim pode ser maximizada. Sendo assim acho q a melhor maneira seria usar Null Layout neh? Mesmo q tenha q posicionar pixel a pixel. A foda é ter q calcular o pixel onde começa e onde termina cada componente e mais o espaçamento para colocar o proximo, é uma chatisse isso, mas fazer oq pelo visto será o jeito...
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/08/2008 19:42:07
|
gustavo_apsilva
JavaBaby
Membro desde: 25/06/2007 20:33:10
Mensagens: 95
Localização: Matão-SP
Offline
|
Null leiaute tem um problema que voce possa considerar.
Como ele trabalha pixel a pixel, você não tem garantia nenhuma de que o leiaute escolhido tenha o mesmo comportamento em outras pataformas. É meio que um tiro no escuro. Não que ficará todo torto, mas não se pode garantir os alinhamentos.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/08/2008 07:17:09
|
Hamses
JavaBaby
Membro desde: 28/03/2006 13:23:50
Mensagens: 85
Offline
|
Ja que usar os metodos que o java te oferece é gambiara então você pode tentar trabalhar com panel utilizando um panel para os componente que estão no top JFrame outro no panel no center JFrame e outro no South do JFrame. Assim quando o usuario redimencionar a tela os componentes serão realinhados juntos.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/08/2008 08:03:47
|
danielpk7
Thread.start()
Membro desde: 03/07/2007 20:44:15
Mensagens: 33
Offline
|
valeu pessoal, acho q vou mesclar null layout com free design utilizando panels mesmo.
Abraço!
|
|
|
 |
|
|