You are on page 1of 27

| 

      


 
   
1) Identificar as funcionalidades da aplicação:
˜ O que ela vai fazer? Qual seu objetivo?
2) Identificar que componentes de interface a aplicação necessita para
funcionar e se comunicar com o usuário:
˜ Que informações ela precisa coletar do usuário? Que informações
(textos, figuras) ela precisa mostrar para o usuário?
3) Identificar os componentes Java que implementam as
funcionalidades identificadas anteriormente (pode ser junto c/4):
˜ Janelas (Frame), painéis (Panel), Menus, caixas de texto (TextField),
Labels...
4) Fazer um esboço (desenho) da interface, estabelecendo seu layout
(ou seja, onde cada componente deve ficar);
5) Criar uma classe Java que gere a interface.
!       


Objetivo da aplicação: Y  Y


Y

Y
 
 
 

·ome do programa: 
Y
 
     
     
åados a serem coletados:
˜  
  
 
˜  Y

 

åados/informações a serem mostrados:


˜ ü
  

 Y Y

˜   
!

"
˜ Y# Y
˜ Y#   
˜   "
 $
K        
    

  
  
K        
    


  
K        
    


   Frame
Para a aplicação
ter uma janela
onde colocar
os componentes
de interface
K        
    
TextFields
Para o usuário poder
informar o endereço
e o nome do arquivo
de imagem


   Frame
K        
    
TextFields
(caixas de texto)
Labels
Para o usuário saber
o quê informar em
cada caixa-de-texto


   Frame
K        
    
TextFields
(caixas de texto)
Labels
(etiquetas)
Button
Para o usuário
informar que
preencheu os dados

   Frame
K        
    
TextFields
(caixas de texto)
Labels
(etiquetas)
Button
(botão)


   Frame

Panel
Local onde
a imagem vai ser
exibida
K        
    
TextFields
(caixas de texto)
Labels
(etiquetas)
Button
(botão)


   Frame

Panel
(painel)
Label
Local onde
as mensagens e
avisos vão ser
exibidos
] 
      
    
         !    
           
!"#    
class Janela extends Frame
{
}

$      #   %u u
 u !   #       %
      %  &      # ' 
 !!! !
    !(   
             !
] 
      
    
"     
%      !

      
   !
   ) 
class Janela extends Frame
{
public Label lb_Endereco;
public Label lb_Arquivo;
public Label lb_Mensagem;
}

$    *+
] 
      
    
  | '   
    
class Janela extends Frame
{
public Label lb_Endereco;
public Label lb_Arquivo;
public Label lb_Mensagem;
public |extField tf_URL;
public |extField tf_NomeArquivo;
public Button bt_Carregar;
public Panel pn_Imagem;
}

$      


   !, 
      * 
         
 !
] 
      
    
-.          !
(     #         
      !/      
 !(      0 
class Janela extends Frame
{
public Label lb_Endereco;
: : :
public Panel pn_Imagem;

public Janela() // método construtor


{
__ Criação de todos os componentes da interface:
lb_Endereco = new Label(³Endereço (URL):´);
: : :
tf_URL = new TextField(³´, 28);
tf_NomeArquivo = new TextField(³´, 25);
bt_Carregar = new Button(³Carregar´);
: : :
}
}
] 
      
    
$    .         
 %  
lb_Endereco : Endereço(URL):

lb_Arquivo : Arquivo:

lb_Mensagem : Informe o local (URL)...

tf_URL :

tf_NomeArquivo:

bt_Carregar : Carregar

pn_Imagem :
] 
      
    
|      1 

lb_Endereco : Endereço(URL):

lb_Arquivo : Arquivo:

lb_Mensagem : Informe o local (URL)...

tf_URL :

tf_NomeArquivo:

bt_Carregar : Carregar

pn_Imagem :
] 
      
    
      
!
     #   2  
      !)     #  2 
   !
(    2 

BorderLayout() FlowLayout() GridLayout(3,3) CardLayout()


$#

4 
  ,

3 #
] 
      
    
"   5 )2 
 !   $#
   )2 %

 )2 % 05 )2 % 

6   # 2    4 


  ,
       
 7   & %$# 3 # 

  , 4 

 %83 #9 :;    3 da#imagem e pressione [E·TER]


Informe o local (URL) e o nome
OBS: O Centro sempre tem a
preferência. Como não estamos
 %8
 9  :   estamos utilizando o West e o
East, o centro ocupa também
seus lugares!
] 
      
    
    
  .    *   
            8$#9

$#
Endereço(URL):

Arquivo:

Carregar

Informe o local (URL) e o nome da imagem e pressione [E·TER]


] 
      
    
-       *  %   !, 
              

Endereço(URL):
Panel:
Arquivo:

Carregar
] 
      
    
"  

Panel painelNorte = new Panel();


         
1
Endereço(URL): 2 3      #  2 
 
4
Arquivo: 5 6
Carregar
painelNorte.setLayout(new GridLayout(2,3));

painelNorte.add(lb_Endereço);
$       7  
painelNorte.add(tf_URL);       
painelNorte.add(new Panel());   !
painelNorte.add(lb_Arquivo);
painelNorte.add(tf_NomeArquivo);
         
painelNorte.add(bt_Carregar);  7 !!!
] 
      
    
               

add(³North´, painelNorte); ,  %-<)


  $# Carregar

Endereço(URL):

Arquivo: Carregar

Informe o local (URL) e o nome da imagem e pressione [E·TER]


] 
      
    
|   7      
class Janela extends Frame Panel painelNorte = new Panel();
{ painelNorte.setLayout(new GridLayout(2,3));
public Label lb_Endereco; painelNorte.setBackground(Color.white));
public Label lb_Arquivo;
public Label lb_Mensagem; painelNorte.add(lb_Endereco);
public TextField tf_URL; painelNorte.add(tf_URL¶);
public TextField tf_NomeArquivo; painelNorte.add(new Panel());
public Button bt_Carregar; painelNorte.add(lb_Arquivo);
public Panel pn_Imagem; painelNorte.add(tf_NomeArquivo);
painelNorte.add(bt_Carregar);
public Janela()
{ lb_Mensagem.setBackground(Color.white));
lb_Endereco = new Label(³Endereço (URL):´); lb_Mensagem.setForeground(Color.red));
lb_Arquivo = new Label(³Arquivo:´);
lb_Mensagem = new Label(³Informe o ...´); this.setLayout(new BorderLayout());
tf_URL = new TextField(³´, 28); this.add(³North´, painelNorte);
tf_NomeArquivo = new TextField(³´, 25); this.add(³Center´, pn_Imagem);
bt_Carregar = new Button(³Carregar´); this.add(³South´, lb_Mensagem);
pn_Imagem = new Panel() }
}
-    

åepois de pronta, a classe janela pode ser utilizada no
programa 
Y
  :
public class VisualizadorDeImagens
{
public static void main(String argumentos[])
{
Janela minhaJanela = new Janela();
minhaJanela.show();
}
}

class Janela extends Frame


{
:
}
$   =!!!
˜        

˜         
     
        
˜       
    =   !

   ' 


   
      +

You might also like