Olá, sou novato por aqui e em Java, e gostaria de saber como organizar os componentes swing em relação à posição. Por exemplo, em Delphi, deixamos os componentes no local que queremos com muita facilidade (claro :lol: ) , mas em Java eu só conheço as propriedades “North”, “South”… e não consigo colocar os componentes na posição onde quero, pois um botão na posição na posição South vai lá pra baixo.
E outra que gostaria de saber é de algum método que deixe meu JFrame sem permissão para ajustar o tamanho da tela, por exemplo, só maximizando, minimizando e restaurando.
Você tá se referindo ao LayoutManager, já mexi om delphi e VB bem pouco, vi que é mais fácil que Java pra desenhar as telas. Talvez você se adapter melhor com o NetBeans, ou JGoodies + Abeille Forms Designer.
ei, vc tb tem a opção de estudar a fundo cada layout manager e uasr eles “na unha”,
pq da última vez q eu mostrei o netbeans 5.0 prum colega que programa java SEM uma dessas IDE’s pesadas ele me chamou de “programador Delphi”,
antraceno
Valeu, galera. Eu uso o Eclipse. Foi bom saber que tem que se aprofundar no LayoutManager, eu vou dar uma olhada mais. E sobre o dimensionamento da janela? Vocês sabem me responder?
Valeu!
lucao
Cara, eu tb me perco um pouco com isso. Quando não tem mais jeito eu uso o setBounds mesmo.
Mas sobre o dimensionamento o que vc quer saber mais especificamente ?
Sombriks
Comenta mais ae q eu não entendi!
antraceno
Assim, eu crio meu JFrame e digo o tamanho dele. Mas o usuário continua dimensionando ele à vontade. Eu queria que ele ficasse fixo, sem que o usuário possa deixar a tela bem pequeneninha, e só ter as opções de minimizar, maximar e fechar, lá na diagonal direita.
jose_neto
Bom para que a janela não possa ser redimensionada, vc deve utilizar um método da classe JFrame chamado setResizable(false); e se querer que redimensione a tela eh só utilizar setResizable(true);
para isso seria bom que vc declarasse o método construtor e dentro dele colocar esse método citado anteriormente.
exemplo:
construtor() // construtor - mesmo nome da classe
{
setResizable(true);
.
.
//outros métodos
.
.
}
valeu espero que eu possa ter ajudado em relação a sua dúvida…
Rodrigo_Manhaes
Use setResizable(false).
[edit: acesso lento dá nisso… ]
antraceno
Pessoal, valeu mesmo, hein?
Mantu
Se vc for fazer na unha, vc também pode setar o layout para null, só que aí vc tem que setar o top, left, width e height de cada componente que por na tela (use o componente.setBounds(int, int, int, int)).
A desvantagem é que vc tem que calcular na mão a posição e as dimensões de cada compónente, o que é bastante trabalhoso. A vantagem é que vc tem uma liberdade infinitamente maior no desenho da sua tela.
Rodrigo_Manhaes
Pô, mas isso dá mais trabalho que aprender GridBagLayout…
Mantu
Hehehehe, não tenha dúvidas disso… O acabamento fica mais preciso, mas o trampo que dá… olha só que beleza, fiz isso num dia em que tava com pouca grana, nenhum amigo por perto, nenhum jogo no micro, e muito tédio (Veja o pacote gui)
antraceno
Pronto, é isso que o Mantu disse que eu tava querendo saber mesmo. Quero ajeitar na unha mesmo porque o programinha que eu vou fazer vai precisar de uns 4 componentes só. Valeu mesmo, hein?