FINAL: CÓDIGO-FONTE DA MIDLET



Documentos relacionados
Capítulo 15 - VendaRemota.java

Prática de Programação J2ME (15) Especialização em Desenvolvimento Web com Interfaces Ricas

Programação para Celular com Java Tipos de Tela

Programação para Celular com Java

Tutorial J2ME Parte 3

Java ME Elementos da interface gráfica Aula 2. Marcio Seiji Oyamada

Design Patterns (Factory Method, Prototype, Singleton)

Conexão Socket na MIDP

Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.

Desenvolvimento de Sistemas Móveis em Java com J2ME/MIDP. Jorge H. C. Fernandes

Componentes MIDlet. 5.1 Componentes exclusivos

insfcanceof new public switch transient while byte continue extends for int null

Aula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Cartão de fidelização de clientes das distribuidoras de combustível.

Programação de Computadores - I. Profª Beatriz Profº Israel

A Linguagem Java. Alberto Costa Neto DComp - UFS

Java 2 Platform, Micro Edition (J2ME)

O objetivo da aula é realizar upload de arquivos com aplicação web. Será realizado o upload de duas formas:

Felipe Guimarães

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery

Desenvolvimento de Jogos para Celular usando Java ME: o Jogo Batalha Terrestre

Plataformaparadispositivosportáteis, de consumo e embebidos Telemóveis

Implementação de Classe e Auto-Relacionamento em Java

MÓDULO 4 SWING Parte 3

nome = n; cargo = c; salario = s; public void print() { System.out.println(nome cargo salario); public void aumento( double fator){

Na classe Utils.java no package utils existe o método readdatefromconsole():

Analisar os sistemas operacionais apresentados na figura e responder as questões abaixo: Identificar

Java ME Elementos da interface gráfica Form Aula 3. Marcio Seiji Oyamada

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas

Arcabouços de Software para Desenvolvimento de Aplicações Embarcadas. Herman Martins Gomes - hmg@dsc.ufcg.edu.br

public Agenda() { compromissos = null; } public int getnumerodecompromissos() { if (compromissos==null) return 0; else return compromissos.

Uma Introdução ao. Computação Móvel (MAC5743/MAC330) Prof. Alfredo Goldman Monitores: Rodrigo Barbosa Daniel Cordeiro

Classes Abstratas e Interfaces

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 6 Filas

CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa

Programação Orientada a Objetos II

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

INSTITUTO DE COMPUTAÇÃO UNICAMP 1o. SEMESTRE DE Profa. Cecília M. F. Rubira

Apostila de J2ME versão 1.0

Código-Fonte da Prática 02

Arquitectura de Sistemas Computacionais

Coleções. Conceitos e Utilização Básica. c Professores de ALPRO I 05/2012. Faculdade de Informática PUCRS


Java Básico. Matrícula de Alunos. Marco Antonio, Arquiteto de Software TJDF Novembro/2005

Programação Visual TIC - 3PA. Lista de Exercícios 02

Roteiro para criação de Applet

Invocação Remota MC704

Programa de Computador que funciona em Rede

Conexão HTTP em Java ME Aula 7. Marcio Seiji Oyamada

A ) O cliente terá que implementar uma interface remota. . Definir a interface remota com os métodos que poderão ser acedidos remotamente

O programa abaixo exemplifica o uso da classe Image para carregar e mostrar uma imagem localizada em um arquivo.

Login. Criar um novo website File > New > WebSite Framework 4.5 Visual C# ASP.NET Empty Web Site Nome do projeto: WebLogin

Java na WEB Componentes Bean

Interfaces. Interfaces: Exemplo. ! São um mecanismo poderoso para ter bons desenhos pois permitem separar contratos das implementações

CONECTIVIDADE. Desenvolvimento de Sistemas WEb Computação Móvel

SISTEMA EXPERIMENTALL 15/11/2009. Olá! A partir de agora vamos conhecer a IDE NetBeans efetuando um micro projeto swing.

MANIPULAÇÃO DE BANCO DE DADOS UTILIZANDO INTERFACE GRÁFICA

PROTÓTIPO DE UM SISTEMA DE CONTROLE E MONITORAÇÃO RESIDENCIAL UTILIZANDO J2ME

Unidade IV: Ponteiros, Referências e Arrays

Desenvolvimento de aplicações Web. Java Server Pages

5 Caso de estudo O cartão fidelidade

Universidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java

Construção de novas Classes em Java. Classes Atributos Métodos Herança...

DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS. PROFª. M.Sc. JULIANA H Q BENACCHIO

Fundamentos de Programaçã. ção Concorrente

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação

Introdução à Programação. Interface, Polimorfismo e Dynamic Binding

Tipos, Literais, Operadores

Tipos, Literais, Operadores

JavaScript 2.0X X

RELACIONAMENTOS ENTRE OS OBJETOS NO FRAMEWORK HIBERNATE Elio Lovisi Filho 1 Ronney Moreira de Castro 2 RESUMO

(Aula 17) Threads em Java

Padrão Arquitetura em Camadas

Técnicas de Programação II

Sabemos que a classe é responsável por definir a estrutura e o comportamento de seus objetos. Portanto, os objetos são instâncias das classes.

Programação Orientada a Objetos. Encapsulamento

CONCURSO PÚBLICO EDITAL Nº 03 / 2015

FACULDADES COC BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO TRABALHO DE CONCLUSÃO DE CURSO. Diego Antonio Sales

Introducão à Tecnologia Móvel 1 UFU - BACALÁ

Especialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares

package br.com.cadastro.visao;

Programação para a Plataforma Android Aula 7. Mul$mídia

UNIVERSIDADE FEDERAL DO PARANÁ

Linguagem de Programação II Implementação

Objetivo do programa: Implementação de um analisador de Logs do Servidor Web com base nos requisitos da unidade curricular de Estatística.

Especialização em Engenharia de Software - CEUT

Exercícios de Revisão Java Básico

UNIVERSIDADE DO TOCANTINS TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS PRÁTICA EM PROGRAMAÇÃO DE SISTEMAS ESTUDO DE CASO II

Apostila de J2ME versão 1.1

JavaFX Classe de Controle e Eventos. Prof. Vicente Paulo de Camargo

!" # # # $ %!" " & ' ( 2

Pilhas. Fabrício J. Barth. BandTec - Faculdade de Tecnologia Bandeirantes

Tutorial de Computação Introdução a Programação Gráfica em Java para MEC1100 v

Como construir um compilador utilizando ferramentas Java

if( opcao.equals("1") ) { ElaborarContratoUI uiec = new ElaborarContratoUI(m_empresa); uiec.run();

Programação Estruturada e Orientada a Objetos

Simulado de Linguagem de Programação Java

Transcrição:

FINAL: CÓDIGO-FONTE DA MIDLET Para fins de conferência, seguem os códigos-fontes alterados. Este código-fonte encontra-se no arquivo chamado ColetorMIDlet.java: package coletor; import br.edu.estacio.produto; import br.edu.estacio.produtopersistencia; import java.util.vector; import javax.microedition.lcdui.*; import javax.microedition.midlet.midlet; /** * Classe visual para cadastro ou edição de produtos. * @author Estácio (Prof. Michel Masiero de Aquino). */ public class ColetorMIDlet extends MIDlet implements CommandListener { private final ProdutoPersistencia produtopersistencia; private Produto produto; private final Vector produtovector; private boolean midletpaused = false; private Command saircommand; private Command salvarcommand; private Command listarcommand; private Command voltarcommand; private Command editarcommand; private Form produtoform; private TextField nometextfield; private TextField quantidadetextfield; private TextField codigotextfield; private List produtolist; private Alert produtoalert; public ColetorMIDlet() { this.produtopersistencia = new ProdutoPersistencia(); this.produtovector = new Vector(); private void initialize() { public void startmidlet() { public void resumemidlet() { public void switchdisplayable(alert alert, Displayable nextdisplayable) { Display display = getdisplay(); if (alert == null) { display.setcurrent(nextdisplayable); else { display.setcurrent(alert, nextdisplayable); public void commandaction(command command, Displayable displayable) { if (displayable == produtoform) { if (command == listarcommand) { if (true == this.produtopersistencia.abrirrecordstore()) { this.produtopersistencia.iniciarnavagacaoproduto(); this.produtovector.removeallelements(); this.getprodutolist().deleteall(); while (true == this.produtopersistencia.irparaproximonavegavel()) { this.produtovector.addelement(this.produtopersistencia.getproduto()); this.getprodutolist().append(this.produtopersistencia.getproduto().getnome(), null); this.produtopersistencia.fecharrecordstore();

switchdisplayable(null, getprodutolist()); else if (command == saircommand) { exitmidlet(); else if (command == salvarcommand) { if (true == this.produtopersistencia.abrirrecordstore()) { String codigo = this.codigotextfield.getstring().trim(); String nome = this.nometextfield.getstring().trim(); String quantidade = this.quantidadetextfield.getstring().trim(); if ((0 < codigo.length()) && (0 < nome.length()) && (0 < quantidade.length())) { if (null == this.produto) { this.produto = new Produto(); this.produto.setcodigo(codigo); this.produto.setnome(nome); try { this.produto.setquantidade(integer.parseint(quantidade)); catch(numberformatexception nfex) { this.produto.setquantidade(0); boolean salvo = this.produtopersistencia.salvarproduto(this.produto); this.produto = null; this.produtopersistencia.fecharrecordstore(); this.codigotextfield.setstring(""); this.nometextfield.setstring(""); this.quantidadetextfield.setstring(""); this.getprodutoalert().setstring((true == salvo)? "Salvo com sucesso!" : "Erro ao salvar!"); else { this.getprodutoalert().setstring("preencha os campos antes de salvar!"); switchdisplayable(getprodutoalert(), getprodutoform()); else if (displayable == produtolist) { if (command == List.SELECT_COMMAND) { produtolistaction(); else if (command == editarcommand) { if (-1 < this.getprodutolist().getselectedindex()) { Produto produtoselecionado = (Produto)this.produtoVector.elementAt(this.getProdutoList().getSelectedIndex()); this.produto = new Produto(); this.produto.setid(produtoselecionado.getid()); this.produto.setcodigo(produtoselecionado.getcodigo()); this.produto.setnome(produtoselecionado.getnome()); this.produto.setquantidade(produtoselecionado.getquantidade()); this.codigotextfield.setstring(this.produto.getcodigo()); this.nometextfield.setstring(this.produto.getnome()); this.quantidadetextfield.setstring(integer.tostring(this.produto.getquantidade())); else if (command == voltarcommand) { public Command getsaircommand() { if (saircommand == null) { saircommand = new Command("Sair", Command.EXIT, 0); return saircommand; public Form getprodutoform() { if (produtoform == null) { produtoform = new Form("Cadastro de Produtos", new Item[]{getCodigoTextField(), getnometextfield(), getquantidadetextfield()); produtoform.addcommand(getsaircommand()); produtoform.addcommand(getsalvarcommand()); produtoform.addcommand(getlistarcommand()); produtoform.setcommandlistener(this); return produtoform;

public Command getsalvarcommand() { if (salvarcommand == null) { salvarcommand = new Command("Salvar", Command.SCREEN, 0); return salvarcommand; public Command getlistarcommand() { if (listarcommand == null) { listarcommand = new Command("Listar", Command.SCREEN, 0); return listarcommand; public Command getvoltarcommand() { if (voltarcommand == null) { voltarcommand = new Command("Voltar", Command.BACK, 0); return voltarcommand; public Command geteditarcommand() { if (editarcommand == null) { editarcommand = new Command("Editar", Command.SCREEN, 0); return editarcommand; public List getprodutolist() { if (produtolist == null) { produtolist = new List("Listagem de Produtos", Choice.IMPLICIT); produtolist.addcommand(getvoltarcommand()); produtolist.addcommand(geteditarcommand()); produtolist.setcommandlistener(this); return produtolist; public void produtolistaction() { String selectedstring = getprodutolist().getstring(getprodutolist().getselectedindex()); public Alert getprodutoalert() { if (produtoalert == null) { produtoalert = new Alert("Informa\u00E7\u00E3o"); produtoalert.settimeout(alert.forever); return produtoalert; public TextField getcodigotextfield() { if (codigotextfield == null) { codigotextfield = new TextField("C\u00F3digo:", null, 32, TextField.ANY); return codigotextfield; public TextField getnometextfield() { if (nometextfield == null) { nometextfield = new TextField("Descri\u00E7\u00E3o:", null, 32, TextField.ANY); return nometextfield; public TextField getquantidadetextfield() { if (quantidadetextfield == null) { quantidadetextfield = new TextField("Quantidade:", null, 4, TextField.NUMERIC); return quantidadetextfield; public Display getdisplay() { return Display.getDisplay(this);

public void exitmidlet() { switchdisplayable(null, null); destroyapp(true); notifydestroyed();