Bem-vindo(a) ao Fórum do Guia do Hacker.
Guia do Hacker - Seu Guia Completo de Informação Digital

Fórum do Guia do Hacker » Desenvolvimento e banco de dados » Aplicações Desktop » Java » Tutorial Como criar uma janela usando JFrame

Java Sobre programação em Java.


Resposta
Ferramentas do Tópico vBmenu Seperating Image Modos de Exibição vBmenu Seperating Image
Tutorial Como criar uma janela usando JFrame
Antigo 24-07-2009, 03:05   #1
tecno-java
Guest
 
Avatar de tecno-java
 
Status: Guest
Posts: n/a
Padrão Como criar uma janela usando JFrame

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:

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);
  }
}
O codigo acima é apenas um, vamos dizer assim, montador da janela. Atravez da proxima aplicação é que é executado o codigo acima.

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);
  }
}
Bem, o que ele faz é bem simples. Ele cria varios metodos sobrecarregados. Isto quer dizer, metodo com nomes iguais porem que recebem argumentos diferentes.

Código:
        SimpleFrame sFrame1 = new SimpleFrame();
	SimpleFrame sFrame2 = new SimpleFrame();
Nesta duas linhas ele cria os objetos sFrame1 e sFrame2.

Código:
	sFrame1.showIt("SimpleFrame 1");
	sFrame2.showIt("SimpleFrame 2",300,300);
Nestas duas linhas ele chama os seguintes metodos showIt:

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);
  }
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

Última edição por RafaelVenancio; 18-12-2009 às 20:24.. Motivo: Prefixo.
  Responder com Citação
Links Patrocinados
Antigo 02-11-2012, 12:12   #2
devteamBrasil
Membro
 
Avatar de devteamBrasil
 
Status: Membro
Registrado em: Oct 2012
Localização: São Paulo
Posts: 1
Agradeceu: 1
Agradecido 0 Vezes em 0 Posts
Thumbs up Otimo tutorial!

Como colocar um JOption.Pane dentro dessa janela?
devteamBrasil está offline   Responder com Citação
Resposta


Ferramentas do Tópico
Modos de Exibição

Regras para Posts
Você não pode postar novos tópicos
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar seus posts

Código [IMG] Sim
Código HTML Não

Ir para...


 

Horários baseados na GMT -3. Agora são 05:24.