Sou Iniciante Java, venho de programaçao OOP em PHP (uns 70% dos meus codigos PHP sao OOP) e 100% Delphi
Minha maior duvida em Java é sobre Layouts.
todo mundo fala sobre BorderLayout, GridBagLayout (eh o que eu mais uso em Layouts) e etc… mas da muito trabalho fazer isso.
Por exemplo, eu quero montar um Formulario de cadastro, com Codigo, Nome, Endereco, usando JLabel e JTextField, eu até fiz usando o GridBagLayout, mas tem duas coisas.
Primeiro: deu um puta trampo digitar linha por linha
Segundo: se o cliente resolve por exemplo adicionar um TextField no meio da tela, nossssaaaaa, ai ferra tudo.
Se for utilizar setLayout(null), usando o JBUilder por exemplo, é bem simples de montar a tela e depois se precisar mexer em alguma coisa é facil de posicionar novamente.
Gostaria de opinião de voces que realmente trabalham com Java, como voces trabalham?
vcs nao perdem muito tempo fazendo tela nao?
Rapaz eu tb estoiu iniciando um projeto pra valer no JAVA, e realmente o que vc falou e verdade, o gerenciador de layout do JAVA deixa quem ta iniciando confuso par não dizer perdido :shock: …
E uma porrada de tipo de layout e principalmente quem e acostumado com layouts fixos como delphi e compania, vixi demora pra pegar, eu ate hoje não peguei direito a galera mais fera podia dar essa força pra gente como vcs usam os gerenciadores de layout ? qual melhor maneira ?
Olha… na verdade o único layout que considero “realmente” complicado é o GridBagLayout, mas pra falar a verdade, até hoje posso contar nos dedos quantas vezes foi realmente necessário utilizá-lo!
É possível utilizar layouts simples como FlowLayout-GridLayout e BorderLayout.
O BorderLayout é fantástico para construir GUIS rapidamente. Em um formulário, como o colega citou, você pode fazê-lo utilizando por exemplo, um painel que utilize FlowLayout com um label e um formlario, e utilizar um GridLayout para colocá-los um abaixo/ao lado do outro.
Pode parecer relativamente mais trabalhoso que o comum, mas não é nenhum absurdo, e fazendo desta forma, fica fácil fazer a manutenção. Lembrem-se que os layouts são também utilizados para permitir que a aplicação tenha a mesma “cara” não importa o sistema operacional que a rode!! (os “look and feels” dos SOs variam muito). Quem já programou em Delphi sabe que às vezes em diferentes versões do windows, o programa parecia diferente, quem dirá em diferentes SOs então!
Recomendo darem uma olhada no JavaTutorial (java.sun.com) que tem muita informação sobre isso, parece-me que atualizaram agora a parte sobre SWING mas ainda não vi como ficou…
Olha… na verdade o único layout que considero “realmente” complicado é o GridBagLayout, mas pra falar a verdade, até hoje posso contar nos dedos quantas vezes foi realmente necessário utilizá-lo!
É possível utilizar layouts simples como FlowLayout-GridLayout e BorderLayout.
O BorderLayout é fantástico para construir GUIS rapidamente. Em um formulário, como o colega citou, você pode fazê-lo utilizando por exemplo, um painel que utilize FlowLayout com um label e um formlario, e utilizar um GridLayout para colocá-los um abaixo/ao lado do outro.
Pode parecer relativamente mais trabalhoso que o comum, mas não é nenhum absurdo, e fazendo desta forma, fica fácil fazer a manutenção. Lembrem-se que os layouts são também utilizados para permitir que a aplicação tenha a mesma “cara” não importa o sistema operacional que a rode!! (os “look and feels” dos SOs variam muito). Quem já programou em Delphi sabe que às vezes em diferentes versões do windows, o programa parecia diferente, quem dirá em diferentes SOs então!
Recomendo darem uma olhada no JavaTutorial (java.sun.com) que tem muita informação sobre isso, parece-me que atualizaram agora a parte sobre SWING mas ainda não vi como ficou…[/quote]
EU ja fiz algumas coisas utilizando JPanel com um tipo de layout e container com outros e etc.
mas por exemplo
como eu faria isso usando GridLayout e BorderLayout?
Usar layout como null ( setBounds & cia ) eh propicio a ter problemas entre plataformas e ate mesmo diferentes resolucoes… pode acontecer que o layout fique muito ruim ou inutilizavel.
Por isso que ha os diferentes layout managers, eles se engarregam de calcular as dimensoes da tela e ajustar os componentes corretamente.
Depois, se fazer no braco for muito ruim, utilizam uma ferramenta como o JBuilder para criar a GUI ou ate mesmo um plugin para o Eclipse, para fazer isso. Ha ainda ferramentas especificar para criar inteface grafica.
A idéia alex, é “montar” um esquema utilizando estes layouts, lembre-se que você pode ter objetos do tipo JPanel (por exemplo) com um layout, e dentro deles outros objetos JPanel com diferentes layouts e assim vai indefinidamente.
Acredito que você deve seguir a recomendação do Rafael e utilizar alguma ferramenta RAD para fazer esse tipo de tarefa.
Falar de layouts em java eh algo que a principio parece complexo…o problema dos layouts são as “restrições” que geralmente eles nos impoe devido ao tipo de aplicação que iremos fazer. Particularmente, começei aprendendo pelos layouts que o java oferece. Acredito que o GridBagLayout eh um dos mais complicados. Acho que para fazer uma aplicação client server usando swing, vc deve utilizar o layout null mesmo, pois dai vc pode setar os objetos de acordo com sua necessidade na tela.
Foi o que eu imaginei mesmo, aplicação Client/Server que é o meu primeiro objetivo em Java vou utilizar layout(null)
eu não achei o GridBagLayout tao complicado não, alias, perto dos outros layouts é bem complexo sim, mas eu achei ele trabalhaso demais, principalmente se for ter que adicionar um novo Objeto no meio dos outros objetos ae complica bastante.
Vou fazer entao com layout(null), mas eu preciso então de alguma IDE que facilite esse trabalho.
Eu mexia com o JBUIlder, mas abandonei ele por dois motivos:
Primeiro: Muito pesado pra minha maquina (P III 500)
Segundo: Não é free.
No momento estou usando o Eclipse, que é bem mais leve, tem uma boa aparencia mas por enquanto nao da pra desenhar na tela como o JBuilder. Ouvi falar que existe plugins pra ele, onde eu acho? quais são os plugins que vcs aconselham, e existe plugin pra ele ficar igual o JBuilder ou vou ter que voltar pro JBuilder mesmo?
Vc esta falando de IDE ou de algum editor de codigo, como o Eclipse? O Eclipse vc digita o código “no braço”, ou seja, ele tem muitas facilidades para vc desenvolver, mas nada que se compare a o JBuilder, onde vc arrasta o objeto ate a interface. Até onde eu sei, não existe nenhum plugin onde vc possa deixar o eclipse igual o JBuilder, ate pq essa não seria a finalidade. Dai vai de vc, caso queira uma IDE onde se arrasta e solta, use o JBuilder, se quer fazer as coisas “no braço”, use o Eclipse, que eh muito bom mesmo. Tem tb o Forte for Java que eh uma IDE, muito pesada por sinal, pois eh feito em java puro, devido a isso eh muito pesado. Te aconselho mesmo a usar o Eclipse.
Eu conheço um ambiente rad que cria as janelas, só que somente com layout null.
é freeware e voce encontra em www.mycgiserver.com/~fernans, clica em Nau de Java e depois em CAFETEIRA.
Eu conheço um ambiente rad que cria as janelas, só que somente com layout null.
é freeware e voce encontra em www.mycgiserver.com/~fernans, clica em Nau de Java e depois em CAFETEIRA.
Não sei se foi para mim a pergunta, mas acho que um programa que apenas crie janelas fica dificil…geralmente as IDE’s geram um código por tras do que vc esta criando no arrasta e solta de objetos…não conheço nenhum que APENAS faça janelas nao.