JFrame ... Me ajudem

7 respostas
M

Eu postei há alguns dias atrás um tópico sobre JFrame, tentando resolver o problema, agradeço aos que me responderam, quando vi a resposta, visto que imaginava que esta estava correta( e ainda acho que estava completamente correta) e a guardei no meu pc e fui testar depois, aconteceu outro erro, o erro antigo é:
“Quando coloco os valores que retorna o valor da tela eles requerem que a variável inteira seja static e quando coloco static acusa um erro que as variáveis que retornam os valores da tela não podem ser referenciadas em membros static.”
E o erro atual é:
"Não sei ao certo, pois ele não encontra o método getGraphicsConfiguration(). Então não sei se funcionará ou não.

O código vem a seguir e vale salientar que este código junto com meu aplicativo não roda( dá erro) na jdk1.2.2 no Linux e no jdk1.2 no windows.

public void centralizeFrame() 
    { 
        int x,y; 
        Rectangle scr  = this.getGraphicsConfiguration().getBounds(); 
        Rectangle form = this.getBounds(); 
        x = (int) ( scr.getWidth() - form.getWidth() ) / 2; 
        y = (int) ( scr.getHeight()- form.getHeight()) / 2; 
        this.setLocation( x , y ); 
    }

O que eu faço, pra simplesmente, pra centralizar o JFrame na tela !!!

Marcel …

7 Respostas

D

Tem como copiar o conteúdo da tela de erro que é gerada?

[]s

M

O erro era esse:

Can´t make static reference to method void centralizeFrame() in class Class.

centralizeFrame();

Method getGraphicsConfiguration() not found in class Class Rectangle scr = this.getGraphicsConfiguration().getBounds();

2 errors

Marcel …

Desculpe se postei uma mensagem errada anteriormente …

Andre_Breves

Essa sua classe Class extende qual classe?

Andre_Breves

Um jeito rápido e sujo:

Dimension screen = getToolkit().getScreenSize();
setLocation((screen.width  - getSize().width)  / 2,
            (screen.height - getSize().height) / 2);
M

Esse jeito gera um erro que fala que não pode ser referenciada uma variável static !

Rafael_Steil

Eh que voce nao pode usar variavel estatica dentro de metodos nao estaticos… uma pequena alteracao no teu codigo resolve.

Rafael

M

O erro é quando eu jogo a variável no setLocation(x, y) ele exige uma variável static e quando coloco a variável como static gera outro erro dizendo que não pode ser referenciada. Eu já meio confuso com tudo, e acho que isso deve ser uma coisa tão fácil de resolver.

Então, que pequena alteração devo fazer no meu código para que ele funcione normalmente? Uma coisa tão simples que está me dando tanto problema!

Criado 6 de novembro de 2002
Ultima resposta 9 de nov. de 2002
Respostas 7
Participantes 4