Desenvolvimento - Mobile

Desenvolvendo uma aplicação móvel simples com .NET – Parte 1

Neste artigo iremos um pouco do poder da computação móvel usando a tecnologia .NET da Microsoft® sobre o ambiente do Framework com as ferramentas de desenvolvimento contidas no Visual Studio.

por Edward E. Martins Jr.



Neste artigo iremos ver um pouco do poder da computação móvel usando a tecnologia .NET da Microsoft® sobre o ambiente do Framework com as ferramentas de desenvolvimento contidas no Visual Studio.

Vamos utilizar como linguagem o C#, todavia, os códigos aqui contidos, poderão facilmente ser adaptados para todas as linguagens da plataforma .NET, tais como VB.NET, Visual J#.NET, Visual C++.NET, etc.

O projeto que iremos trabalhar consiste em uma aplicação de venda de sanduíches em uma lanchonete. Esta aplicação será feita sobre o conceito de três camadas e seu desenvolvimento está dividido em três partes. Na primeira, iremos criar a parte de acesso a dados, na segunda, montaremos os forms e seus respectivos campos, a fim de juntar a camada de aplicação com a lógica de negócio, e na terceira parte, vamos inserir a camada de dados e terminar a aplicação.

Como requisitos não funcionais de software iremos usar:

  • MSWXP ou superior, MSW2000 ou superior.
  • Visual Studio .NET 2003.
  • IIS + Front page extenções.
  • SQL Server OU MSDE.
  • .NET Framework 1.1

Descrição do sistema:

O sistema deverá rodar em um Pocket PC e armazenar localmente os pedidos de cada cliente com seus respectivos itens e armazenar também o vendedor que efetuou a venda, ou seja, quem atende ao cliente (garçom, atendente, etc.).

Tais dados serão posteriormente capturados por uma aplicação não contida no escopo deste projeto.

Iniciando um novo projeto.

Inicie o Microsoft Visual Studio .NET 2003 da área de trabalho ou do menu iniciar programas.

Clique em File / New Project.

Depois escolha Visual C# Projects e em Smart Device Application 1, conforme a figura abaixo.

Se preferir poderá mudar o nome do projeto de SmartDeviceApplication1 para o nome que quiser, aqui vamos colocar SVS (Sistema de Vendas de Sanduíches).

Ficando assim:

Depois clique em OK.

A próxima fase será escolher a plataforma em que a aplicação irá rodar e que tipo de aplicação será. Neste projeto iremos selecionar a plataforma Windows CE e o tipo do projeto será Windows Application.

Depois clique em OK.

Agora vamos adaptar nosso Form para trabalhar em um Pocket PC.

Nossa primeira missão é ajustar o tamanho da tela.

No menu de propriedades do Form existe uma tag chamada Layout, nela deve-se ajustar os valores contidos no size, coloque 240;294, que indica o Width e o Height do Form.

Agora vamos testar nossa primeira tela da aplicação.

Dê um duplo click no Form e entre com o seguinte código no método de carregamento da aplicação:

private void Form1_Load( object sender, System.EventArgs e
{
this .Text = "Famigeratu Olá Mundo!"; //Este é o código...
}

Lembre-se que C# é case sensitive.

Depois vá até Deployment Device e escolha Pocket PC 2003 Emulator.

Clique em clique em Start (Debug).

Neste fantástico processo de deploy, será chamado um emulador de Pocket PC rodando o windows CE que irá rodar sua aplicação.

O que deverá aparecer é a seguinte tela:

E depois de alguns instantes:

Perceba que o texto do formulário não aparece por completo, com isto aprendemos a primeira lição destes simpáticos dispositivos: todo o espaço é muito pequeno, portanto utilize-os da melhor forma, e assim sendo:

private void Form1_Load( object sender, System.EventArgs e)
{
this .Text = "Olá Mundo!"; //Este é o código...
}

Agora, clique em Emulador / Shut Down... e escolhe Turn off Emulator.

Mude então o código alterando o texto a ser exibido no Form, dê um deploy novamente e verifique se o texto do formulário aparece corretamente.

Agora vamos começar de verdade nossa aplicação.

Esta aplicação terá uma tela de cadastros de itens e vendedores, uma tela de venda de itens e uma tela inicial.

Para tal usaremos um MainMenu para escolha de cadastro ou venda, e depois um TabControl para escolha de cadastro de itens e vendedores.

Na toolbox, clique no controle MainMenu e arraste para seu Form e ele terá esta aparência.

Vamos agora adicionar um menu de escolhas, no qual deverá conter Cadastro e Venda.

Dê um clique em “Type Here” e insira “&Menu”, o “&” antes do “M” de “Menu” significa que ao pressionar “Alt + M” este objeto terá o foco da aplicação, como se fosse pressionado, o que não faz o menor sentido nesse tipo de aplicação.

Depois abaixo de “Menu” coloque da mesma forma, “&Cadastro” e “&Venda”. Veja a figura.

Adicione também um item de menu de saída do sistema

Agora vamos adicionar o Form de cadastro.

No Solution Explorer clique com o botão direito do mouse no projeto e em ADD / ADD Windows Form.

Coloque o nome de “Frm_Cadastro.cs” para este Form e clique em Open.

Altere o tamanho do Form para 240;294, assim como no Form principal.

Agora vamos adicionar o TabControl de cadastro de itens e vendedor. No Tool box clique em TabControl e arraste para o Form. Depois nas propriedades clique em TabPages (Collection ). Adicione uma TAB, clicando em Add.

Mude a propriedade Text e Name para ITENS.

Clique em Add novamente e adicione VENDEDOR

Depois clique em OK. O seu Form de Cadastro ficará assim:

Adicione um botão e defina as seguintes propriedades:

Name: Btn_Sair
Text: &Sair

Ficando assim:

Para a Tab VENDEDOR, monte a seguinte estrutura de labels e TextBox:

Para a caixa de texto do código do vendedor, defina as seguintes propriedades:

MaxLenght: 15
Name: Txt_Cod_Vendedor

Para a caixa de texto do nome do vendedor, defina as seguintes propriedades:

MaxLenght: 30
Name: Txt_Nome_Vendedor

Para a Tab ITENS, monte a seguinte estrutura de labels e TextBox:

Para a caixa de texto do código do item, defina as seguintes propriedades:

MaxLenght: 15
Name: Txt_Cod_Item

Para a caixa de texto do nome do item, defina as seguintes propriedades:

MaxLenght: 30
Name: Txt_Nome_Item

Para a caixa de texto da descrição do item, defina as seguintes propriedades:

MaxLenght: 60
Name: Txt_Descricao_Item
Multline: true

Agora vamos adicionar o Form de Venda. Repita o processo de adição deste ultimo Form.

Depois disto monte a seguinte estrutura de labels e TextBox:

Para a combo do nome do vendedor, defina as seguintes propriedades:

Name: Cmb_Vendedor

Para o botão de abertura de pedido, defina as seguintes propriedades:

Text: &Abre Pedido
Name: Btn_Abre_Pedido

Para a combo nome do item, defina as seguintes propriedades:

Name: Cmb_Item
Enabled: false

Para o botão de adição de item, defina as seguintes propriedades:

Text: &Adiciona
Name: Btn_Adiciona
Enabled: false

Para a lista de itens, defina as seguintes propriedades:

Name: Lst_Itens
Enabled: false

Para o botão de remoção de item, defina as seguintes propriedades:

Text: &Remove Item
Name: Btn_Remove_Item
Enabled: false

Para o botão de adição de item, defina as seguintes propriedades:

Text: &Efetua Venda
Name: Btn_Efetua_Venda
Enabled: false

Para o botão de Sair de item, defina as seguintes propriedades:

Name: Btn_Sair
Text: &Sair

Dê um duplo clique no botão “Abre Pedido” e insira o seguinte código:

private void Btn_Abre_Pedido_Click(object sender, System.EventArgs e)
{
Cmb_Item.Enabled = true;
Btn_Adiciona.Enabled = true;
Lst_Itens.Enabled = true;
Btn_Remove_Item.Enabled = true;
Btn_Efetua_Venda.Enabled = true;
Btn_Abre_Pedido.Enabled = false;
Cmb_Vendedor.Enabled = false;
}

E em todos os botões “Sair” adicione o seguinte código:

private void Btn_Sair_Click(object sender, System.EventArgs e)
{
	this.Close();
}

Agora vamos adicionar os códigos dos menus para chamada dos formulários.

Dê um duplo clique no menu de cadastro e insira o seguinte código:

private void menuItem2_Click(object sender, System.EventArgs e)
{
/* cria um objeto do tipo Form e instancia as propriedades de Frm_Cadastro*/
Form Frm_Cad = new Frm_Cadastro();
Frm_Cad.Parent = this;/*Seta a propriedade "Parent" deste Form para o Form principal*/
Frm_Cad.Show();/*chama e exibe o Form.*/
}

Dê um duplo clique no menu de venda e insira o seguinte código:

private void menuItem3_Click(object sender, System.EventArgs e)
{
	Form Frm_Vend = new Frm_Venda();
	Frm_Vend.Parent = this;
	Frm_Vend.Show();
}

Dê um duplo clique no sair e insira o seguinte código:

private void menuItem4_Click(object sender, System.EventArgs e)
{
	Application.Exit();
}

Agora dê um deploy e verifique se esta aplicação roda com sucesso.

Continua no próximo artigo...

Edward E. Martins Jr.

Edward E. Martins Jr. - Edward E. Martins Jr.
Engenheiro de sistemas da Intermec South America