Tumgik
helpjavaworld-blog · 9 years
Link
Arquivo Complementar
Java- Desenvolvendo um JFrame
0 notes
helpjavaworld-blog · 9 years
Text
TUTORIAL BÁSICO PARA CRIAÇÃO DE INTERFECES GRÁFICAS
Tumblr media
Este tutorial é bem básico, feito para quem não tem prática na criação de interfaces gráficas em Java. 
Certo, queremos criar uma simples interface com o usuário que seja uma janela padrão (com funções de minimizar, maximizar e fechar) contendo um caixa de texto dentro (digamos que seja um início para o nosso notepad em Java ).  Sigamos o raciocínio: primeiro fazemos a janela. Como em Java trabalhamos com objetos em tudo então precisamos de um objeto que seja uma janela. Então nossa classe de janela vai herdar da classe de janela do Swing (prefira-o ao awt, na maioria dos casos):
Tumblr media
Bem, já temos uma classe que cria objetos que são janelas. Agora precisamos construir a infraestrutura da janela, modificando-a e adicionando coisas. Isso faz parte do processo de construção da janela e nenhum lugar melhor para isso que no construtor da classe!  Antes uma pequena pausa para explicar um detalhe. As API gráficas do java provêm dois tipos de componentes visuais: componentes propriamente ditos e containers.  [list] Um componente é uma peça (widget) que tem alguma função na interface.  Um container é um componente que tem a capacidade de abrigar outros componentes (conteiners possuem um método add(), que recebe qualquer componente como parâmetro e o adiciona a sua lista de componentes "abrigados").[/list]  Sem entrar em muitos méritos (esse é um tutorial curto), o swing tem uma característica interessante adicional: todos os componentes swing, todos mesmo são também containers (possuem um método add())!   Retomando a nossa trilha agora: nosso próximo objetivo é abrigar uma caixa de texto na janela. Para isso, simplesmente criaríamos um objeto JTextArea (é o componente visual para grandes áreas de texto não formatado (como no notepad do windows) no swing) e o passaríamos para o método add().  Mas há um pulo do gato aí! Até o Java 1.4, não era possível adicionar componentes gráficos diretamente em um JFrame. Isso porque ele é um container especial que só permite um número limitado de componentes (containers) abrigados nele. Em um JFrame existem alguns containers "invisíveis" sobrepostos. O container mais superficial é chamado de "[color=red:ec9b2e8e19]contentPane[/color:ec9b2e8e19]" (painel de conteúdo) e é a superfície na qual os componentes devem ser dispostos.  Usar o método add() do JFrame faria com que nosso componente ficasse embaixo do [color=red:ec9b2e8e19]contentPane[/color:ec9b2e8e19], sem efeito visual. Por isso, no J2SE1.4 para trás, o compilador reclama com vc. se isso for feito.  Mas então como raios eu adiciono o componente? Simples, obtenha uma referência ao contentPane e use o método add() desse contêiner: 
Tumblr media
No Java 1.5 (J2SE5.0 - Tiger), se vc. usa o método add() do JFrame (this.add(texto)), o compilador já supõe que vc. quer adicionar um componente no contentPane e gera um bytecode equivalente a this.getContentPane().add(texto). Boa notícia, não? Mas lembre-se: só funciona da versão 5.0 do Java em diante.  Nosso objetivo está quase pronto, já temos nossa janela. Agora só precisamos exibir a mesma. Uma arquitetura melhor seria criar outra classe executável para usar a nossa janela, inicializando a aplicação criando e exibindo. Mas para sermos simplistas, vamos usar essa classe mesmo, tornando-a uma classe funcional (executável). 
Tumblr media
Ponha isso pra rodar e você vai ter... nada! Você criou o objeto da janela, mas em momento algum disse para torná-lo visível ao usuário. Acrescente então no método main() a linha: 
1.        janela.setVisible(true);  
Ao rodar isso você obtém sua janela... Mas ops! ela fica pequenininha lá no canto esquerdo. Você tem que definir um tamanho para sua janela! 
Acrescente a linha: 
Tumblr media
Dica: Faça isso antes de exibir sua janela. Assim a JVM não precisa enviar mensagens ao Sistema Operacional para redimensionar a janela. Defina o tamanho antes (deixando que os componentes dentro da janela se organizem para o tamanho da mesma) e mostre depois!  Obs.: Ao invés do setSize(), você também pode utilizar o método pack() (sem parâmetros dessa vez) para que ele configure a janela com o melhor parâmetro que abrigue todos os componentes, de acordo com seus tamanhos. Em nosso exemplo não vai adiantar nada, pq não definimos um tamanho (preferencial ou específico) para o JTextArea.  Enfim, eis o código que funciona perfeitamente: 
Tumblr media
Referência Bibliográfica
Javefree.org
http://javafree.uol.com.br/topic-13762-Criando-uma-simples-Janela-Swing.html
                                            JFrame
A Biblioteca SWING do Java que contém a classe JFrame com todos recursos e componentes necessários para criarmos uma "Janela" que nos permite inserir botões; menus; caixa de texto; imagens e diversos outros objetos gráficos. 
Bom, um "Frame", ou Janela propriamente dito, contém seus atributos, vejamos alguns deles: 
Atributos:
1-Nome para a Barra de Título (JIP) 2- Rótulos ou Textos (IP, IP2 e os pontos separando os campos de texto) 3- Campo de Texto (São os 8 campos em branco) 4- Botão (Converter e Classe?) 5- Botões Fechar; Minimizar e Maximizar 
Tumblr media
Componentes:
1- A Barra de Título já vem pronta pela classe JFrame, só precisamos nomeá-la (JIP) 2- JLabel (“IP”, “IP(2)” e os pontos separando os campos de texto) 3- JTextField (São os 8 campos em branco) 4- JButton (“Converter” e “Classe?”) 5- Botões Fechar; Minimizar ou Maximizar também pertence a classe JFrame.
Possui também:  *Tamanho ou Dimensão  *Localização ou Posição  *Visibilidade
 Alguns dos "atributos" citados acima são definidos através dos seguintes métodos:
 setSize(): Altera o tamanho da janela, sendo passado por parâmetro x e y, no caso tamanho largura e altura respectivamente 
setLocationRelativeTo(): Deixa o JFrame alinhado em algum ponto da tela, por exemplo, ‘null’ deixa alinhado no centro 
setDefaultCloseOperation(): Método de como será fechado o frame, por exemplo, ‘EXIT_ON_CLOSE’ sai totalmente do sistema e da RAM, já o ‘DISPOSE_ON_CLOSE’ só sai da janela atual 
setVisible(): Deixando a janela visível (true), ou invisível (false)
setResizable(): Deixa a janela, redimensionável (true) ou não (false) 
setLayout(null): Monta o layout de um JFrame, temos que sempre colocar o (null) para não atribuir nenhum gerenciador, para que possamos controlar a posição dos componentes manualmente.
getContentPane().setBackground(): Responsável por pintar a cor de fundo de um JFrame, como por exemplo, ‘Color.WHITE’  add(): Adiciona um componente no JFrame, como um botão ou um campo de texto.  Certo, depois de um "breve" resumo de JFrame vamos "pôr a mão na massa"?  Então vamos lá, vamos criar um  JFrame(Janela) a mesma da imagem acima:
Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media
Resultado Final
Tumblr media
SEGUNDO EXERCÍCIO EM SALA DE AULA:
Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media
RESULTADO FINAL:
Tumblr media
Dicas:
public static void main (String args[]){ 
{
                       new nomedaclasse();
                       }
Não esqueça para executar o programa!!!
 setVisible(true);
Não esqueça para visualizar!!!
 setResizable(false);
O usuário não consegui mudar o tamanho da janela!!!
 nomedoTextFild.setEnabled(false);
Para desabilitar a caixa de texto desejada!!!
                                  Exercícios
  1)      Qual desses comandos configura o tamanho da janela no Java:
a)      JfTela.setLocation(0,0)
b)      jfTela.setLocationRelativeTo(null);
c)      JF.TelasetSize(300,400)
d)      jfTela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  2)      Marque as alternativas CORRETAS.
a)      jfTela.setvisible(true); Torna a janela visível.
b)      jfTela.setVisible(true); Torna a janela visível.
c)      jfTela.setVisible(false);Torna a janela visível
d)      jfTela.setvisible(false); Torna a janela invisível.
e)      jfTela.setVisible(false);Torna a janela invisível.
 3)      Marque Verdadeiro(V) ou Falso(F) nas afirmativas abaixo:
( )A interface é dada por uma tela gráfica em que a ligação entre o usuário e o sistema.
( ) Uma classe herda somente de uma interface.
( ) Uma interface herda somente de uma interface.
( ) jfTela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  Não define qual será o comportamento da janela quando a o usuário fechá-la.
( ) setResizable();Deixa a janela, redimensionável (true) ou não (false)
setSize(); Deixa a janela visível.
 4)      Escreva o que se entende com os comandos:
a)      setLocationRelativeTo();
b)      jfTela.setSize(200, 300);
c)      jfTela.setLocation(0, 0);
d)      add();
e)      jtC.setEnabled(false);
0 notes
helpjavaworld-blog · 9 years
Text
Postagens grupo5
0 notes
helpjavaworld-blog · 9 years
Text
Postagens grupo4
0 notes
helpjavaworld-blog · 9 years
Text
Postagens grupo3
0 notes
helpjavaworld-blog · 9 years
Text
Postagens grupo2
0 notes
helpjavaworld-blog · 9 years
Text
Postagens grupo1
0 notes
helpjavaworld-blog · 9 years
Photo
Tumblr media
Dark Flat v2 by Lucafav
28 notes · View notes