INE5612
Laboratório 2 - JavaBeans

Prof. Frank Siqueira

Departamento de Informática e Estatística
Universidade Federal de Santa Catarina
 

INE5612 | Descrição | JavaBeans | Implementação | AvaliaçãoDúvidas


Descrição

O objetivo dessa atividade prática é desenvolver um componente JavaBean gráfico, baseado na tecnologia Java SE. Esse componente permitirá que o valor contido no campo contido em uma interface gráfica seja calculado utilizando operações matemáticas básicas.

O componente que será desenvolvido pode ser utilizado no aplicativo desenvolvido no Trabalho 1, com o intuito de calcular novos valores de produtos, aplicar descontos, etc.


Implementação do Componente Gráfico

Para iniciar a construção do componente, primeiro crie um novo projeto no NetBeans do tipo ‘Aplicativo Java’. Em seguida, clique no menu ‘Arquivo à Novo Arquivo’ e crie um 'Objeto JavaBean' do tipo ‘Personalizador’. Clique em ‘Próximo’, especifique o nome de um pacote no qual será criado o componente e clique em ‘Finalizar’.

Descrição: C:\Users\Frank\Documents\INE5612\Web\Lab2-CalcField\index_arquivos\image002.jpg

Adicione os componentes que desejar no seu componente, utilizando os componentes disponíveis na paleta do NetBeans. 

Definição de Propriedades e Métodos do Componente

Você deve definir as propriedades e os métodos do componente que serão necessários para implementar a funcionalidade de uma calculadora simples.

O componente deve possuir as seguintes propriedades:

·         calcPanelVisible: booleano que define se o painel da calculadora deve ser exibido;

·         value: um double com o valor exibido no campo;

·         font: fonte do texto do componente (campo com o valor e botões da calculadora).

Propriedades podem ser geradas clicando com o botão da direita do mouse em qualquer ponto do código-fonte da classe do componente, selecionando ‘Inserir Código’ e em seguida clicando em ‘Adicionar propriedade’:

Descrição: Descrição: C:\Users\Frank\Documents\INE5612\Web\Lab2-PhotoViewer\index_arquivos\image003.jpg   Descrição: Descrição: C:\Users\Frank\Documents\INE5612\Web\Lab2-PhotoViewer\index_arquivos\image004.jpg

Na janela ‘Adicionar propriedade’, especifique o nome, valor inicial e o tipo da propriedade, e os métodos de acesso que devem ser gerados.

Descrição: Descrição: C:\Users\Frank\Documents\INE5612\Web\Lab2-PhotoViewer\index_arquivos\image005.jpg

Em alguns casos pode ser necessário adicionar código aos métodos de acesso gerados automaticamente, para que seja executado o comportamento adequado. Se preferir, você pode criar a propriedade manualmente, adicionando ao código-fonte a declaração do atributo e os métodos de acesso, respeitando as convenções de nomeação.

Caso julgue adequado, implemente outros métodos que possam ser necessários para interação com o componente.

Efetue o tratamento dos eventos gerados pela interação do usuário com os botões do componente. Isso deve ser feito alterando propriedades e/ou efetuando chamadas a métodos que ativem o respectivo comportamento.

Durante seu desenvolvimento, o componente pode ser testado criando uma aplicação com um método main() para teste.

public static void main(String[] args) {
   javax.swing.JFrame frame = new javax.swing.JFrame();  // Cria frame
   xxxxxxxxBean bean = new xxxxxxxxBean (); // Instancia o bean
   // Alterar as propriedades que julgar necessárias aqui!
  
frame.add(bean);  // Adiciona bean ao frame
   frame.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
   frame.setVisible(true);  // Exibe o frame
}

Descritor do Componente

Depois de criado o componente, crie também uma classe do tipo BeanInfo, que fornecerá informações sobre o componente. A classe BeanInfo pode ser criada através do menu ‘Arquivo à Novo Arquivo’, na categoria ‘Objetos JavaBeans’, e deve ser dado a ela um nome igual ao nome do componente, acrescido de ‘BeanInfo’. Crie um construtor para o BeanInfo e defina os valores dos seguintes atributos, que serão úteis para que o componente seja exibido adequadamente no NetBeans:

·         iconNameC16: arquivo com um ícone de 16x16 pixels colorido que represente o componente;                 

·         iconNameC32: arquivo com um ícone de 32x32 pixels colorido que represente o componente;                 

·         iconNameM16: arquivo com um ícone de 16x16 pixels monocromático que represente o componente;                 

·         iconNameM32: arquivo com um ícone de 32x32 pixels monocromático que represente o componente;   

·         beanDescriptor: objeto da classe BeanDescriptor que contém o nome e uma descrição do componente.

 

Edite também o arquivo ‘manifest.mf’, localizado na pasta raiz do projeto, que pode ser acessado na janela ‘Arquivos’.

Descrição: Descrição: image004.gif

Especifique o nome completo da classe e indique que se trata de um JavaBean.

Manifest-Version: 1.0
Name: /pacote/NomeDaClasse.class
Java-Bean: True

Por fim, compile o projeto para que seja criado o arquivo de distribuição (JAR) do componente.

Testando o Componente

Após concluídos os testes, adicione o bean na paleta de componentes do NetBeans, abrindo o ‘Gerenciador de Paleta’ - clique na paleta com o botão da direita do mouse e escolha a opção ‘Gerenciador de Paleta’. Em seguida, clique no botão ‘Adicionar JAR’, selecione o arquivo JAR do bean (contido na pasta ‘dist’ do projeto) e o adicione à categoria ‘Beans’.

Para finalizar a atividade, insira o componente na aplicação criada no Trabalho 1, configure as propriedades do componente, execute a aplicação e teste o seu funcionamento.


Avaliação

A atividade deve ser desenvolvida em duplas. A apresentação deve ser feita até o dia 22/10. Os dois integrantes do grupo devem estar presentes no momento da apresentação. Será verificado o funcionamento do programa e em seguida os alunos devem responder oralmente a questões formuladas pelo professor sobre o código fonte do programa. Podem ser atribuídas notas diferentes aos integrantes de um grupo, dependendo das respostas às perguntas sobre o código do programa efetuadas pelo professor. Caso um dos alunos não esteja presente ou demonstre não conhecer o código do programa, este ficará com nota zero na atividade. Em caso de cópia do código de outro grupo, ambos terão nota igual a zero.

 


Dúvidas

Material para Consulta

·         Help e página do NetBeans.

·         Documentação da API do Java.

Atendimento aos Alunos

  • Horário: Terças-feiras das 16:20 às 18:00.
  • Local: Prédio do INE - Sala 305.

 

E-Mail

 

f r a n k @ i n f . u f s c . b r

l a u . l u n g @ i n f . u f s c . b r

 


Mantida por Frank Siqueira. Atualizada em 08/10/2012.