[RESOLUÇÃo]

Pessoal to desenvolvendo um projeto aqui mas to com uma dúvida, eu uso a resolucao no meu pc 1024, programei todas janelas me baseando nessa resoluca porem quando mudo a resolucao do meu windows para 1280 e abro o sistema a tela fik bem menor(meio que obvio), tem como programa os tamanho das telas pra puxar a resolucao e abrir a tela conforme a resolucao? obrigado

tenta usar isso:

frameprincipal.setExtendedState(JFrame.MAXIMIZED_BOTH);

abracosss

ja uso isso mas se vc mudar a resolucao do windows ele fik menor ;/

a tela do programa ate fica na resolucao full mas os paineis tabelas eles fica pequenos

Ken420,

uma saída que encontrei para independer do tamanho da resolução da tela foi setar os tamanhos dos componentes para porcentagem.

Primeiro eu fiz dois métodos para pegar a altura e largura da tela:

//altura da tela
private int getAlturaTela(){
		int alt = (int)Toolkit.getDefaultToolkit().getScreenSize().getHeight();
		return alt;
	}

//largura da tela
private int getLarguraTela(){
		int larg = (int)Toolkit.getDefaultToolkit().getScreenSize().getWidth();
		return larg;
	}

Depois de criar um Dimension com as dimensões da tela, é só utilizar porcentagens para os componentes.

Por exemplo, se eu quiser colocar um painel com 40% de altura e 40% de largura, é só sé setar o Dimension dele assim:

return new Dimension((int)(tamanhoTela.getWidth() * 0.4), (int)(tamanhoTela.getHeight() * 0.4));

Não sei se é a melhor solução, mas pra mim funcionou.

Até mais

[quote] phpinheiro

pow entendi sua linha de pensamento, vai me ajudar sim qualquer duvida eu posto ae muito obrigado!

[/quote]

no caso teria que implementar esse metodo para todos componentes que inserir na tela ex: JButton, JPanel, JLabel?

Cara,

eu fiz somente para jpanel. Botões e labels eu não usei porcentagem.

Pra componentes “pequenos”, digamos assim, eu usei GridBagLayout.

Olha só, dependendo da hora eu poderia precisar de 4 ou 8 paineis na tela. Eles eram todos em porcentagem, mas os componentes inseridos neles estavam todos em gridbag, até porque eram pequenos pra eu me preocupar com tamanho (o gridbag cuida do resto).

fazer isso entao em layout(null) n daria entao ou até daria pq sei la todos falam mal mas acho muito mais controlavel usando o setBounds do que otro modo!

o problema do setBound é que ele é dependente de plataforma. Sua aplicação no windows, muito provavelmente não ficará a mesma no linux, ou qualquer outro sistema operacional. Dê uma olhada na biblioteca forms do jgoodies, para layouts.

Fernando

Mas ainda me surgiu uma dúvida eu fazendo esse metodo do getScreenSize ele vai pegar a screenSize do meu monitor e vai ver qual resolucao é e fazer a soma e centralizar e ajustar conforme a minha resolução.
Mas o que isso vai mudar em relacao a por exemplo um jpainel meu tem la no setBounds(1024,768,X,Y), e se eu colocar meu monitor na resolucao de 1280x1024 a tela fica menor entende pq esta programado em 1024, como fazer para n dar o valor do setBounds e ele pegar o tamanho da tela e criar os componentes conforme a resolucao? deu pra entender? qqr coisa explico melhor vlw!

é só usar os métodos que eu mencionei antes… getLargura e getAltura, e setar o bounds com eles. Se vc mudar a resolução, ele muda o tamanho junto.

Sacou?

aaaaaaa ai inves de colocar os tamanhos 1024 e tal eu ponho as variaveis do tamanho?

Exatamente …

Consegui criar a Dimension, e pediu para mim fazer o import do Toolkit, e ate ae esta ok, so que nao estou conseguindo colocar um JPanel com essas medidas
aonde coloco isso

return new Dimension((int)(tamanhoTela.getWidth() * 0.4), (int)(tamanhoTela.getHeight() * 0.4));  

meu JPanel esta assim

        //JPanel Front
        painel_front = new JPanel();
        painel_front.setBounds(0,0,1024,70);
        painel_front.setBackground(new Color(0,150,255));
        //JPanel Back
        painel_back = new JPanel();
        painel_back.setBounds(0,700,1024,30);
        painel_back.setBackground(new Color(0,150,255));

vlw phpinheiro!

consegui fazer funciona nos painéis, ele extende certinho os painels so que estou com otro problema, meu projeto tem 2 jpanel 1 no topo e otro no rodapé da minha tela, e no meio fica um papel de parede no caso uma imagem.png… como faco pra essa imagem tambem se extender pq a foto ja tem o tamanho cortado em 1024x768 como extendo ela pra fik no meio da tela e grande igual meu jpanel se extendeu para os lados! vlw

problema persiste ainda n sei mais o que fazer ;/