Bom pessoal, o codigo que postarei aqui eu retirei do livro Introduction to GUI with Java Swing, que comecei a ler.
Esta é primeira aplicaçao que colocarei aqui entre muitas outras que colocarei ao decorrer da leitura.
Ela é bem simples, a função dela é apenas mostrar uma janela simples na tela, sem componente nenhum.
Fiz uma pequena modificação para funcionar sem precisar criar o pacote, visto que ele estava dentro de um, package its.SimpleFrame;.
Segue o codigo:
O codigo acima é apenas um, vamos dizer assim, montador da janela. Atravez da proxima aplicação é que é executado o codigo acima.
Bem, o que ele faz é bem simples. Ele cria varios metodos sobrecarregados. Isto quer dizer, metodo com nomes iguais porem que recebem argumentos diferentes.
Nesta duas linhas ele cria os objetos sFrame1 e sFrame2.
Nestas duas linhas ele chama os seguintes metodos showIt:
Apesar do nome e do modificador de acesso e o retorno serem identicos, o parametro é diferente. Isso é diferente para o JVM, para ele, estes metodos nao sao iguais.
O metodo hideIt() ele colocou no codigo apenas para falar ( no livro esta falando ) que se voce executar este metodo, o programa ainda continuara rodando.
Ou seja, vamos dizer que voce tivesse um botao e ao clicar ele chamasse este metodo. O que iria acontecer é que o JFrame ficaria invisivel, mas nao fecharia. Se por acasso voce abrisse outro programa e fechasse novamente do mesmo modo, abrisse outro.. e assim por diante.. isto consumiria muita memoria.
Para fechar um JFrame, tem que ser atravez do atributo setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);.
Nao irei mostrar, apenas mencionar. No curso do neri vi que tem outros tipos de constantes estaticas (final static... Orientação a Objetos hein pessoal) igual a esta.
Vamos dizer que seu programa tivesse um botao que abriria um novo JFrame. Se voce coloca o setDefault.. Isto fecharia todo o programa. Por isto, existe a constante DISPOSE_ON_CLOSE.
Se por acaso alguem quiser ver um uso disso tudo que falei e nao mostrei, peça. Nao irei fazer o tutorial se nao tiver certeza que alguem ira ler ne...
Bom, abaixo segue uma imagem da execução do codigo mostrado acima.
Qualquer duvida sobre o codigo aqui descrito, pergunte! Nao fique com medo de perguntar.
Espero que voces tenham gostado e ate a proxima.
Abraços
Esta é primeira aplicaçao que colocarei aqui entre muitas outras que colocarei ao decorrer da leitura.
Ela é bem simples, a função dela é apenas mostrar uma janela simples na tela, sem componente nenhum.
Fiz uma pequena modificação para funcionar sem precisar criar o pacote, visto que ele estava dentro de um, package its.SimpleFrame;.
Segue o codigo:
Código:
import javax.swing.JFrame; public class SimpleFrame extends JFrame { public SimpleFrame() { this.setSize(200,200); this.setLocation(200,200); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } //Makes the frame visible public void showIt() { this.setVisible(true); } //Makes the frame visible and sets the title text. public void showIt(String title){ this.setTitle(title); this.setVisible(true); } //Makes the frame visible and sets the title text //and the position of the window public void showIt(String title,int x,int y){ this.setTitle(title); this.setLocation(x,y); this.setVisible(true); } //Makes the frame invisible public void hideIt(){ this.setVisible(false); } }
Código:
public class SimpleFrameDriver { public static void main(String[] args) { SimpleFrame sFrame1 = new SimpleFrame(); SimpleFrame sFrame2 = new SimpleFrame(); sFrame1.showIt("SimpleFrame 1"); sFrame2.showIt("SimpleFrame 2",300,300); } }
Código:
SimpleFrame sFrame1 = new SimpleFrame(); SimpleFrame sFrame2 = new SimpleFrame();
Código:
sFrame1.showIt("SimpleFrame 1"); sFrame2.showIt("SimpleFrame 2",300,300);
Código:
public void showIt(String title){ this.setTitle(title); this.setVisible(true); }
Código:
public void showIt(String title,int x,int y){ this.setTitle(title); this.setLocation(x,y); this.setVisible(true); }
O metodo hideIt() ele colocou no codigo apenas para falar ( no livro esta falando ) que se voce executar este metodo, o programa ainda continuara rodando.
Ou seja, vamos dizer que voce tivesse um botao e ao clicar ele chamasse este metodo. O que iria acontecer é que o JFrame ficaria invisivel, mas nao fecharia. Se por acasso voce abrisse outro programa e fechasse novamente do mesmo modo, abrisse outro.. e assim por diante.. isto consumiria muita memoria.
Para fechar um JFrame, tem que ser atravez do atributo setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);.
Nao irei mostrar, apenas mencionar. No curso do neri vi que tem outros tipos de constantes estaticas (final static... Orientação a Objetos hein pessoal) igual a esta.
Vamos dizer que seu programa tivesse um botao que abriria um novo JFrame. Se voce coloca o setDefault.. Isto fecharia todo o programa. Por isto, existe a constante DISPOSE_ON_CLOSE.
Se por acaso alguem quiser ver um uso disso tudo que falei e nao mostrei, peça. Nao irei fazer o tutorial se nao tiver certeza que alguem ira ler ne...
Bom, abaixo segue uma imagem da execução do codigo mostrado acima.
Qualquer duvida sobre o codigo aqui descrito, pergunte! Nao fique com medo de perguntar.
Espero que voces tenham gostado e ate a proxima.
Abraços
Comment