Tamanho de uma JFrame

10 respostas
K

Boas pessoal.
EU estou com um problema eu criei uma JFrame mas nao estou a conseguir atribuir-lhe um tamanho. Eu estou a utilizar o comando JFrame.setSize(20,20), mas nao esta a dar. Alguem me sabe dizer o k eu estou a fazer de mal

10 Respostas

tspaulino

Boa tarde colega,

Faz o seguinte: no construtor da Janela que você deseja montar, use o comando

this.setSize(altura, largura);

O método JFrame.setSize() não é estático, ou é???
E mesmo que seja (ou fosse), a qual instância de JFrame você o estaria aplicando??

Abraço,

Tiago Paulino.

jessetsilva

Eu usei o setBounds e funcionou, experimenta ai

JFrame frame = new JFrame();
		frame.setBounds(0,400,500,400);

flw

K

Mesmo assim nao tou a conseguir se calhar estou a fazer alguma coisa mal, é que eu comecei agora a mexer com a interface grafica

tspaulino

Posta o teu código ae q a gente vê o que está acontecendo melhor…

K

Aki esta o meu codigo:

import javax.swing.*;

public class NewClass {

private JFrame jFrame;
private JPanel jPanel;

public void monta(){
    
    jFrame = new JFrame();
    jFrame.setSize(20,20);
    
     jFrame.pack();
    jFrame.setVisible(true);
    jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}


public static void main(String[] args) {
    new NewClass().monta();
jessetsilva
public static void main(String[] args) {
		
		 JFrame jFrame; 
		 JPanel jPanel; 

		

		jFrame = new JFrame(); 
		 
		jFrame.setSize(200,200); 
		//jFrame.pack(); 
		jFrame.setVisible(true); 
		jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

	}
ta ai, mas 20 é mto pequeno, mesmo que apareça, vai ser insignificante, dai nem da pr saber se funciona ou não

e aqui neste link fala sobre as classe Java, de uma lida sobre o método PACK que vc tentou usar e vc vai ententer pq ele esta comentado :

http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Window.html#pack()

tspaulino

Kra… esse código é bem velhinho…
hehehe…

Tenta fazer algo mais prático, tipo assim:

public class Janela extends JFrame{

  /*Construtor da classe (no caso, da sua janela)*/
  Janela(){
    super("Minha primeira Janela");
    setVisible(true);    
    setSize(300,200);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    
    JPanel pane= new JPanel();
    getContentPane().add(pane);

    JButton funciona= new JButton("Apareci!!");
    pane.add(funciona);
  }

  public static void main(String args[]){
    Janela app= new Janela();
  }
}
K

Diz-me so uma coisa. o que faz este comando “getContentPane().add(pane)”

tspaulino

O comando getContentPane().add(pane) solicita a instância de Container (nesse caso, o JFrame) utilizada e adiciona um novo componente sobre ela (na camada acima do JFrame).

Att,

Tiago Paulino.

K

Mto obrigado. Ja esta a dar

Criado 22 de setembro de 2008
Ultima resposta 22 de set. de 2008
Respostas 10
Participantes 3