<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.0.10" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>Educandário Santa Rita de Cássia</title>
	<link>http://blog.santarita.g12.br</link>
	<description>Blog do Educandário Santa Rita de Cássia</description>
	<pubDate>Tue, 08 May 2007 15:42:32 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.10</generator>
	<language>en</language>
			<item>
		<title>Técnica de Desenvolvimento de Aplicativos - 02/04/07</title>
		<link>http://blog.santarita.g12.br/2007/05/08/tecnica-de-desenvolvimento-de-aplicativos-020407/</link>
		<comments>http://blog.santarita.g12.br/2007/05/08/tecnica-de-desenvolvimento-de-aplicativos-020407/#comments</comments>
		<pubDate>Tue, 08 May 2007 15:42:32 +0000</pubDate>
		<dc:creator>Joao Ortiz</dc:creator>
		
		<category>Sem Categoria</category>

		<guid isPermaLink="false">http://blog.santarita.g12.br/2007/05/08/tecnica-de-desenvolvimento-de-aplicativos-020407/</guid>
		<description><![CDATA[&#8221; &#8216;Bom Dia&#8217; Primeiro Ano !&#8221; Como estão vocês?
Antes de mais nada, gostaria de pedir desculpas pela demora em postar nossa aula e agradecer aos trabalhos que foram entregues.
Vamos então à nossa aula de hoje?
Trabalharemos hoje com um novo controle do Visual Basic: a Listbox, e algumas de suas propriedades. Para isso vamos ler o [...]]]></description>
			<content:encoded><![CDATA[<p>&#8221; &#8216;Bom Dia&#8217; Primeiro Ano !&#8221; Como estão vocês?<br />
Antes de mais nada, gostaria de pedir desculpas pela demora em postar nossa aula e agradecer aos trabalhos que foram entregues.<br />
Vamos então à nossa aula de hoje?</p>
<p>Trabalharemos hoje com um novo controle do Visual Basic: a Listbox, e algumas de suas propriedades. Para isso vamos ler o enunciado de nossa aplicação.</p>
<p>- Um aplicativo que receba informações de um livro(título, autor, editora) e a partir de um &#8220;clique&#8221; no botão &#8216;Adicionar&#8217;, cadastre as informações na lista no seguinte formato:<br />
<center><i>TÍTULO - AUTOR - EDITORA</i></center><br />
Ex:<br />
<center><i>O Senhor dos Anéis- J. R. Tolkien - ImFe</i></center></p>
<p>A aplicação conta também com um botão &#8216;Remover&#8217;, responsável por eliminar o item da lista que estiver selecionado.<br />
Segue abaixo, a interface de nosso programa.</p>
<p><img src="http://www.santarita.g12.br/Aulas/Imagens/imgLivros1.jpg" alt="Livros" /></p>
<p>Já perceberam que será simples de desenvolver não é mesmo? Afinal, teremos apenas rotinas desenvolvidas para o botão Adicionar e Remover.</p>
<p>Então, mãos na massa.</p>
<p>A partir da IHM descrita acima, desenvolva sua interface de acordo com os objetos utilizados. Pretendo, daqui pra frente deixar a critério de vocês a nomenclatura dos objetos. No entanto, vou explicar o novo controle a ser utilizado: a LISTBOX.</p>
<p><img src="http://www.santarita.g12.br/Aulas/Imagens/imgLivros2.jpg" alt="Livros" /></p>
<p>A Listbox, é um controle que nos permite adicionar valores(no formato Texto), separados por linha. Graças a ela, poderemos então ter a nossa primeira idéia de banco de dados, e observar realmente como as disciplinas de nosso curso vão se relacionando mais ainda com o decorrer das aulas. Quanto à sua nomenclatura, vamos nomeá-la com o prefixo &#8216;LST&#8217;. Ex: <em>lstLivros</em></p>
<p>Lembram-se do conceito de campo? Então, podemos dizer que cada informação a ser preenchida sobre o livro, pode ser considerada como um campo: TITULO, AUTOR, EDITORA.<br />
Melhorando ainda mais o nosso raciocínio, podemos afirmar que se a idéia fosse montar um banco de dados relacionado à nossa aplicação, esses campos fariam parte de uma tabela LIVROS.</p>
<p>Uma vez, pronta a interface, vamos à programação:</p>
<p>Está bem claro pra nós, o que deve acontecer quando clicarmos no Botão Adicionar: <strong>Os dados do livro devem ser cadastrados na lista.</strong> Mas ainda há um detalhe: o enunciado do programa exige um formato de cadastro para esses dados: <strong>Titulo - Autor - Editora</strong>.<br />
Talvez isso seja um problema, já que teremos as informações separadas em cada TextBox. Mas lembrem-se: temos o famoso recurso de Concatenação de variáveis (Ch &#038; X). Graças a isso, nosso problema está resolvido mais rápido do que pensamos.</p>
<p>Vamos então à programação do Botão Adicionar.</p>
<p><em>Private Sub cmdAdd_Click()<br />
    Dim sTitulo, sAutor, sEditora, sDados</p>
<p>    sTitulo = txtTitulo.Text<br />
    sAutor = txtAutor.Text<br />
    sEditora = txtEditora.Text</p>
<p>    sDados = sTitulo &#038; &#8221; - &#8221; &#038; sAutor &#038; &#8221; - &#8221; &#038; sEditora</p>
<p>    lstLivros.AddItem sDados</p>
<p>End Sub</em></p>
<p>Analisando a codificação acima, temos três variáveis: sTitulo, sAutor, sEditora - responsáveis por armazenar as informações das respectivas caixas de texto, além da variável sDados, que irá guardar a string completa a ser adicionada posteriormente na lista. Observe o recurso de concatenação utilizado para juntar as variáveis:</p>
<p><em>sDados = sTitulo &#038; &#8221; - &#8221; &#038; sAutor &#038; &#8221; - &#8221; &#038; sEditora</em></p>
<p>Temos agora um comando novo:</p>
<p><em>lstLivros.AddItem sDados</em></p>
<p>Já sabemos que lstLivros é a nossa ListBox. As ListBoxs possuem a propriedade <em>AddItem</em> que adiciona uma string à lista. No nosso caso, a string a ser adicionada é o conteúdo da variável sDados.<br />
Ao executar o programa, preenchendo as caixas de texto e adicionando as informações, podemos observar que a cada adição, os itens são cadastrados em uma nova linha da lista.</p>
<p><img src="http://www.santarita.g12.br/Aulas/Imagens/imgLivros3.jpg" alt="Livros" /></p>
<p>Vamos agora ao botão &#8216;Remover&#8217;.</p>
<p>A idéia é remover da lista, o item cuja linha estiver selecionada. A propriedade ListIndex, retorna um valor inteiro referente a linha que estiver selecionada.</p>
<p>-1 - Nenhuma linha selecionada<br />
0 - Primeira linha<br />
1 - Segunda linha<br />
2- Terceira linha<br />
3 - Quarta linha, e assim sucessivamente.</p>
<p>Isto significa que quando nenhuma linha estiver selecionada, ou seja, quando a propriedade ListIndex da lista for igual a -1, devemos exibir uma mensagem de erro e não podemos remover nenhum item.</p>
<p>Vamos desenvolver a lógica:</p>
<p>SE ITEM_SELECIONADO = -1 ENTÃO<br />
     EXIBIR &#8220;Selecione um item.&#8221;<br />
SE NÃO<br />
     REMOVER ITEM SELECIONADO<br />
FIM SE</p>
<p>Simples não é? Passaremos agora então nossa lógica para a linguagem do Visual Basic.</p>
<p><em>Private Sub cmdRem_Click()<br />
    If lstLivros.ListIndex = -1 Then<br />
        MsgBox &#8220;Selecione um item.&#8221;, vbCritical, &#8220;Erro.&#8221;<br />
    Else<br />
        lstLivros.RemoveItem lstLivros.ListIndex<br />
    End If<br />
End Sub</em></p>
<p><img src="http://www.santarita.g12.br/Aulas/Imagens/imgLivros4.jpg" alt="Livros" /></p>
<p>Observando a rotina, podemos encontrar uma outra propriedade da ListBox: <em>RemoveItem</em>. Ao contrário da propriedade AddItem, a propriedade RemoveItem como o próprio nome já diz, retira um determinado elemento da lista. Mas não é somente isso que essas duas propriedades tem de diferente:</p>
<p><em>lstLivros.AddItem sDados</em>                 |                 <em>lstLivros.RemoveItem lstLivros.ListIndex                  </em></p>
<p>Enquanto a propriedade <em>AddItem</em> recebe uma string a ser adicionada na lista, a propriedade <em>RemoveItem</em>, recebe um valor inteiro, a partir da propriedade ListIndex, que faz referência ao número da linha cujo item estiver selecionado, como dito anteriormente.</p>
<p>Fácil, fácil, fácil.</p>
<p>Espero que todos tenham aproveitado.</p>
<p>Abraços e tenham uma boa aula de Inglês Técnico.
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santarita.g12.br/2007/05/08/tecnica-de-desenvolvimento-de-aplicativos-020407/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Técnica de Desenvolvimento de Aplicativos - 26/03/2007</title>
		<link>http://blog.santarita.g12.br/2007/03/26/tecnica-de-desenvolvimento-de-aplicativos-26032007/</link>
		<comments>http://blog.santarita.g12.br/2007/03/26/tecnica-de-desenvolvimento-de-aplicativos-26032007/#comments</comments>
		<pubDate>Tue, 27 Mar 2007 02:12:30 +0000</pubDate>
		<dc:creator>Joao Ortiz</dc:creator>
		
		<category>Sem Categoria</category>

		<guid isPermaLink="false">http://blog.santarita.g12.br/2007/03/26/tecnica-de-desenvolvimento-de-aplicativos-26032007/</guid>
		<description><![CDATA[Programa Estacionamento
Caros Alunos,
Espero que a postagem de nossas aulas, esteja sendo de grande utilidade a vocês no auxílio à programação e na solução de dúvidas.
Vamos a nossa segunda aula.
Na aula de hoje, trabalhamos com alteração dinâmica das propriedades dos objetos. Desenvolvemos então, uma aplicação que controla a entrada e saída de veículos de um estacionamento. [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Programa Estacionamento</strong></p>
<p>Caros Alunos,</p>
<p>Espero que a postagem de nossas aulas, esteja sendo de grande utilidade a vocês no auxílio à programação e na solução de dúvidas.</p>
<p>Vamos a nossa segunda aula.</p>
<p>Na aula de hoje, trabalhamos com alteração dinâmica das propriedades dos objetos. Desenvolvemos então, uma aplicação que controla a entrada e saída de veículos de um estacionamento. Para melhor entendimento, vamos a parte contextual de nosso programa.</p>
<p>- Um programa que administre a entrada e saída de veículos controlado apenas por 2 botões: &#8220;+&#8221; (Adicionar Veículo), &#8220;-&#8221; Remover Veículo. O sistema tem, inicialmente, seus controles bloqueados e estes só são ativados por um botão &#8220;Abrir Estacionamento&#8221;. A ativação consiste em desbloquear os botões &#8220;+&#8221; e &#8220;-&#8221;, permitindo que carros entrem e saiam do estacionamento.<br />
Algumas informações devem estar disponíveis em tela, como o número de vagas disponíveis e o número de vagas ocupadas.<br />
Temos ainda um botão &#8220;Fechar Estacionamento&#8221;, que desativa todos os controles, e deixa o programa em seu estado inicial, estando apenas ativado o botão &#8220;Abrir Estacionamento&#8221;.</p>
<p><strong>Importante:</strong></p>
<ul>
<li>O estacionamento tem vaga para 500 carros.</li>
<li>Ao adicionar um novo carro, deve-se verificar se há vagas disponíveis.</li>
<li>Ao retirar um carro, deve-se certificar se existem carros no estacionamento.</li>
<li>O estacionamento não é 24h, portanto não se pode fechá-lo, com carros em seu interior.</li>
</ul>
<p>Vamos então à tela do nosso aplicativo:</p>
<p><img src="http://www.santarita.g12.br/aulas/imagens/imgEstacionamento1.jpg" alt="Interface da aplicação" /></p>
<p>Por enquanto estamos apenas trabalhando com os objetos mais simples do Visual Basic: <em>Labels, TextBox, CommandButton</em>.<br />
Então vamos nessa!<br />
Monte a sua interface baseada na IHM descrita acima não esquecendo sempre de alterar as propriedades necessárias ou desejadas.<br />
As palavras coloridas em torno da figura, são os nomes de cada objeto. Observe que não atribuímos nomes a todos os objetos do formulário, mas somente aos que iremos usar na programação. Sintam-se livres para nomear os objetos e desenvolver a interface ok?!</p>
<p>E agora? Por onde começamos?<br />
Vamos reler alguns pontos do contexto do aplicativo.</p>
<p><strong>&#8220;O sistema tem, inicialmente, seus controles bloqueados e estes só são ativados por um botão &#8216;Abrir Estacionamento&#8217;.&#8221;</strong></p>
<p>&#8220;Inicialmente&#8221; - Essa é uma palavra-chave para sabermos por onde começar. Temos então que desativar os objetos quando o programa for carregado.<br />
Já tem idéia em qual objeto iremos programar? </p>
<p>Temos que utilizar o evento Load do Formulário. Vamos começar?</p>
<p>A propriedade que define se o objeto está ativo é a propriedade Enabled. Recebe um valor booleano True ou False. True, define que o objeto está ativado e False, desativa o objeto.</p>
<p><em>Private Sub Form_Load()</p>
<p>    cmdClose.Enabled = False<br />
    txtOcupadas.Enabled = False<br />
    txtDisp.Enabled = False<br />
    cmdAdd.Enabled = False<br />
    cmdRem.Enabled = False</p>
<p>End Sub</em>    </p>
<p>Controles desativados, ao iniciar nosso programa, a interface é vista dessa forma:</p>
<p><img src="http://www.santarita.g12.br/aulas/imagens/imgEstacionamento2.jpg" alt="Interface" /></p>
<p>Partindo para o próximo passo, e ainda utilizando a idéia anterior, temos:</p>
<p><strong>&#8220;O sistema tem, inicialmente, seus controles bloqueados e estes só são ativados por um botão &#8216;Abrir Estacionamento&#8217;.&#8221;</strong></p>
<p>Temos então que dar ação ao botão Abrir Estacionamento, este que será responsável por ativar os demais controles.<br />
Além de ativar os controles, vamos aperfeiçoar o nosso programa, e preencher automaticamente as Caixas de Texto &#8220;Vagas Ocupadas&#8221; e &#8220;Vagas Disponíveis&#8221; com seus valores iniciais: 0 e 500, respectivamente.</p>
<p><em>Private Sub cmdOpen_Click()<br />
    cmdClose.Enabled = True<br />
    cmdAdd.Enabled = True<br />
    cmdRem.Enabled = True<br />
    cmdOpen.Enabled = False</p>
<p>    txtOcupadas.Text = 0<br />
    txtDisp.Text = 500<br />
End Sub</em></p>
<p>Enfim, terminamos a primeira parte de nosso programa. A segunda etapa é dar ação aos botões &#8220;+&#8221; e &#8220;-&#8221;, mas antes disso, precisamos saber ao certo, a real utilidade desses botões e algumas regras. Voltamos ao contexto:</p>
<p><strong>&#8220;Algumas informações devem estar disponíveis em tela, como o número de vagas disponíveis e o número de vagas ocupadas. (&#8230;) O estacionamento tem vaga para 500 carros. Ao adicionar um novo carro, deve-se verificar se há vagas disponíveis. Ao retirar um carro, deve-se certificar se existem carros no estacionamento.&#8221;</strong></p>
<p><strong>Informações disponíveis em tela:</strong> Entenderam o porquê que iniciamos as caixas com valores 0 e 500? A idéia é atualizar os valores desses campos em tempo real, quando um carro chegar, ou sair do estacionamento.<br />
Porém, há alguma limitações: Para adicionar um novo carro, é necessário verificar se o estacionamento não está lotado. Em outras palavras, só é possível adicionar um novo carro, SE O NÚMERO DE VAGAS OCUPADAS FOR INFERIOR A 500.</p>
<p>É aí então que entra a nossa famos estrutura de decisão if. Observe a idéia abaixo:</p>
<p>Se vagasOcupadas >= 500 então<br />
    exibir &#8220;Não há mais vagas disponíveis!&#8221;<br />
Se não<br />
    vagasOcupadas = vagasOcupadas + 1<br />
    vagasDisponiveis = vagasDisponiveis - 1<br />
Fim se</p>
<p>Entenderam mais ou menos a lógica? Vamos então às ações do botão <em>cmdAdd</em>:</p>
<p><em>Private Sub cmdAdd_Click()</p>
<p>If txtOcupadas.Text >= 500 Then<br />
    MsgBox &#8220;Não há mais vagas disponíveis!&#8221;, vbCritical, &#8220;Ortiz Park&#8221;<br />
    Exit Sub<br />
Else<br />
    txtOcupadas.Text = txtOcupadas.Text + 1<br />
    txtDisp.Text = txtDisp.Text - 1<br />
End If</p>
<p>End Sub</em></p>
<p>Explicação:</p>
<p>Analisando a codificação acima, verificamos se o número de vagas ocupadas é igual ou superior a 500. Caso isso seja verdadeiro, mandamos a mensagem na tela: &#8220;Não há mais vagas disponíveis!&#8221;. (Nenhuma dúvida em relação à msgbox não é?).<br />
Um novo comando aparece nesse bloco: <strong>EXIT SUB</strong>. Esse comando, ao ser executado, faz com que a sequência da rotina pertencente ao evento atual, deixe de ser executada. Utilizando a linguagem de nosso programa, dizemos que ele manda a mensagem na tela, e não faz mais nada.</p>
<p>E se o número de vagas for inferior a 500? (Ou seja, caso contrário - ELSE)<br />
Então poderemos adicionar um veículo ao estacionamento sem problemas, somando 1, ao valor encontrado em vagas ocupadas, e subtraindo 1 das vagas disponíveis. É isso que fizemos nessas linhas de código:</p>
<p><em>txtOcupadas.Text = txtOcupadas.Text + 1<br />
txtDisp.Text = txtDisp.Text - 1</em></p>
<p>Partimos então agora, para a programação no Botão CmdRem, responsável por tirar veículos do estacionamento.<br />
Se pararmos pra pensar, da mesma forma que não podemos adicionar um carro ao estacionamento lotado, também não podemos tirar o carro de um estacionamento vazio. Se você acha q também teremos uma estrutura de decisão IF nessa rotina, está totalmente correto. Vamos então à lógica:</p>
<p>Se vagasOcupadas <= 0 então<br />
    exibir "Não há mais carros no estacionamento!"<br />
Se não<br />
    vagasOcupadas = vagasOcupadas - 1<br />
    vagasDisponiveis = vagasDisponiveis + 1</p>
<p>Fim se</p>
<p>Passando a lógica para a programação do botão "Remover", temos:</p>
<p><em>Private Sub cmdRem_Click()</p>
<p>If txtOcupadas.Text <= 0 Then<br />
    MsgBox "Não há mais carros no estacionamento!", vbCritical, "Ortiz Park"<br />
    Exit Sub<br />
Else<br />
    txtOcupadas.Text = txtOcupadas.Text - 1<br />
    txtDisp.Text = txtDisp.Text + 1<br />
End If</p>
<p>End Sub</em></p>
<p>Observe a imagem abaixo e veja como ficou. Analise os valores das caixas de texto txtOcupadas e txtDisp.</p>
<p><img src="http://www.santarita.g12.br/aulas/imagens/imgEstacionamento3.jpg" alt="Interfaces" /></p>
<p>Terminamos? Não, mas estamos quase lá. Basta agora fazermos as ações do botão &#8220;Fechar Estacionamento&#8221;.<br />
A idéia é fazer com que, ao clicar nesse botão, o programa volte ao seu estado inicial, com os campos desativados, afinal, podemos dizer que é um botão de fechamento e &#8220;travamento&#8221; do aplicativo.<br />
A codificação utilizada é parecida com a rotina <em>Form_load</em>, porém apagar os valores contidos nas caixas de texto ok?<br />
Mais um detalhe:</p>
<ul>
<li>O estacionamento não é 24h, portanto não se pode fechá-lo, com carros em seu interior. </li>
</ul>
<p>Sendo assim, não podemos fechar o estacionamento com carros em seu interior. Se você acha que teremos que usar outra estrutura de decisão IF, acertou de novo. Nesse caso é simples:</p>
<p><em>Private Sub cmdClose_Click()</p>
<p>If txtOcupadas.Text > 0 Then<br />
    MsgBox &#8220;Ainda existem carros no estacionamento!&#8221;, vbCritical, &#8220;Ortiz Park&#8221;<br />
    Exit Sub<br />
Else<br />
    txtOcupadas.Text = &#8220;&#8221;<br />
    txtDisp.Text = &#8220;&#8221;<br />
    cmdClose.Enabled = False<br />
    txtOcupadas.Enabled = False<br />
    txtDisp.Enabled = False<br />
    cmdAdd.Enabled = False<br />
    cmdRem.Enabled = False<br />
    cmdOpen.Enabled = True<br />
 End If</p>
<p>End Sub</em></p>
<p>Agora sim, finalmente terminamos o nosso aplicativo. Observe que já se trata de uma aplicação funcional, e pode, de certa forma, ser aplicada a algum ambiente. É assim que iremos trabalhar em nossa disciplina, criando aplicativos funcionais.</p>
<p>Qualquer dúvida, não hesitem em questionar! Até a próxima aula.</p>
<p>Um grande abraço a todos!
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santarita.g12.br/2007/03/26/tecnica-de-desenvolvimento-de-aplicativos-26032007/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Técnica de Desenvolvimento de Aplicativos - 19/03/2007</title>
		<link>http://blog.santarita.g12.br/2007/03/19/tecnica-de-desenvolvimento-de-aplicativos-19032007/</link>
		<comments>http://blog.santarita.g12.br/2007/03/19/tecnica-de-desenvolvimento-de-aplicativos-19032007/#comments</comments>
		<pubDate>Mon, 19 Mar 2007 18:52:22 +0000</pubDate>
		<dc:creator>Joao Ortiz</dc:creator>
		
		<category>Sem Categoria</category>

		<guid isPermaLink="false">http://blog.santarita.g12.br/2007/03/19/tecnica-de-desenvolvimento-de-aplicativos-19032007/</guid>
		<description><![CDATA[Programa Lata de Tinta
Olá queridos alunos.
Na aula de hoje, trabalhamos com operações matemáticas envolvendo variáveis, através de dados fornecidos via teclado.
Para isso, desenvolvemos o seguinte aplicativo:
- Um programa que receba 3 informações:a dimensão de uma parede que pode ser pintada usando-se 1 lata de tinta (em metros quadrados), a altura de uma parede (em metros) [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Programa Lata de Tinta</strong></p>
<p>Olá queridos alunos.<br />
Na aula de hoje, trabalhamos com operações matemáticas envolvendo variáveis, através de dados fornecidos via teclado.<br />
Para isso, desenvolvemos o seguinte aplicativo:<br />
- Um programa que receba 3 informações:a dimensão de uma parede que pode ser pintada usando-se 1 lata de tinta (em metros quadrados), a altura de uma parede (em metros) e a largura da parede(em metros). A partir dessas informações, o programa deve retornar uma resposta de quantas latas de tintas são necessárias para preencher toda a parede.<br />
Para termos uma melhor noção, segue abaixo a interface gráfica de nossa aplicação:</p>
<p><img src="http://www.santarita.g12.br/aulas/imagens/imgparede1.jpg" alt="Interface do Aplicativo" /></p>
<p>Observe que na IHM(Interface Homem-Máquina) acima, temos um formulário com 9 objetos.</p>
<p>Labels: lblMetros, lblAltura, lblLargura, lblResult<br />
TextBox: txtMetros, txtAltura, txtLargura<br />
Command Buttons: cmdCalcular, cmdLimpar</p>
<p>As <em>labels</em> são os chamados &#8216;Rótulos&#8217; e servem, nesse caso, para indicar o que deve ser informado em cada campo de texto. Observe também que há a label inferior (resultado), que será um rótulo com a função de exibir a saída (número de latas necessárias) do programa.<br />
Os campos de texto, servem como função de entrada por parte do usuário, para que possa informar os valores para o processamento. Veremos como tratar e trabalhar o conteúdo desses campos mais adiante.</p>
<p>Podemos destacar ainda, dois botões de comando, que serão essenciais em nossa aplicação. O botão &#8216;Calcular&#8217; será responsável por processar as informações recebidas e retornar o resultado esperado. Já o botão &#8216;Limpar&#8217;, é simples, e tem a função de zerar os campos para que possa ser feita uma nova consulta (pura perfumaria***, porém, uma perfumaria*** necessária).</p>
<p>Vamos então colocar a mão na massa?</p>
<p>Monte a sua interface com os objetos descritos acima, não esquecendo de sempre nomear seus objetos para melhor controle de seu programa. A interface apresentada acima é apenas sugestiva e quero que vocês sintam-se livres para criar a de vocês.</p>
<p>Antes de começarmos a programar, vamos tentar responder 2 questões:<br />
1. O que nosso programa faz?<br />
2. Quando ele faz?</p>
<p>Respostas<br />
1. O nosso programa calcula quantas latas de tinta são necessárias para pintar uma parede, dados a altura e largura da parede, assim como a &#8220;porção&#8221; da parede que pode ser pintada utilizando somente uma única lata de tinta.</p>
<p>2. Nossa aplicação deve calcular a quantidade de tintas e exibir o resultado em tela, no momento em que <strong>clicarmos</strong> no botão <strong>Calcular</strong>.</p>
<p>Respondendo a essas duas perguntas concluimos que as ações e comandos utilizados serão atribuídos ao <strong>Evento Click</strong> do botão <strong>cmdCalcular</strong>.</p>
<p>Clicando, portanto, duas vezes sobre o botão &#8216;Calcular&#8217;, será aberta a janela de código com a seguinte codificação:</p>
<p><em>Private Sub cmdCalcular_Click()</p>
<p>End Sub</em></p>
<p>Vamos iniciar nossa programação pela declaração de variáveis. Observe novamente, que temos três campos a serem preenchidos.</p>
<p><img src="http://www.santarita.g12.br/aulas/imagens/imgparede2.jpg" alt="Campos" /></p>
<p>Agora lembre-se de nossas aulas de algoritmos, quando fizemos o programa da área do triangulo.<br />
                                                         AREA = (BASE*ALTURA)/2<br />
Tinhamos 3 variáveis, sendo duas ultilizadas como entradas (base e altura) e outra pra armazenar o resultado.</p>
<p>Partindo desse princípio, vamos montar a equação a ser utilizada em nosso programa, e verificar quantas variaveis iremos utilizar.</p>
<p>                   TOTALLATAS = (LARGURAPAREDE * ALTURAPAREDE)/METROS_LATA</p>
<p>Desta forma, utilizaremos 4 variáveis:<br />
 - TOTALLATAS: Irá receber o total de latas a serem utilizadas;<br />
 - LARGURAPAREDE: Recebe a largura da parede definida pelo usuário;<br />
 - ALTURAPAREDE: Recebe a altura da parede definida pelo usuário;<br />
 - METROS_LATA: Recebe quantos metros podem ser preenchidos com cada lata de tinta.</p>
<p>Sendo assim, vamos voltar ao nosso programa.</p>
<p><em>Private Sub cmdCalcular_Click()</p>
<p>Dim TOTALLATAS, LARGURAPAREDE, ALTURAPAREDE, METROS_LATA      &#8216;declaração das variáveis</p>
<p>End Sub</em></p>
<p>As variáveis declaradas acima, foram criadas justamente para armazenar os valores digitados em cada caixa de texto. Para que isso seja feito, vamos primeiramente lembrar de uma pergunta clássica que faço durante as aulas:</p>
<p>&#8220;Como faço para recuperar o conteúdo de dentro de um campo texto?&#8221;</p>
<p>E vocês sempre me respondem:</p>
<p>&#8220;NOME DA CAIXA DE TEXTO.TEXT, Querido Professor&#8221;</p>
<p>Isso mesmo. Em qualquer ocasião, sempre que precisamos pegar o conteúdo de uma caixa de texto, utilizamos o nome do objeto.(ponto)TEXT.</p>
<p>obs: Esse padrão, vem das raízes da programação Orientada ao Objeto, conhecido como &#8220;OBJETO.METODO&#8221;, assunto que o professor Nivaldo Junior irá lhes explicar melhor em um futuro não muito distante. </p>
<p>Voltando ao nosso código e colocando em prática nosso pensamento anterior:</p>
<p><em>Private Sub cmdCalcular_Click()</p>
<p>Dim TOTALLATAS, LARGURAPAREDE, ALTURAPAREDE, METROS_LATA      &#8216;declaração das variáveis</p>
<p>LARGURAPAREDE = txtLargura.text  &#8216;atribuindo a variavel LARGURAPAREDE o valor digitado em txtLargura<br />
ALTURAPAREDE = txtAltura.text  &#8216;atribuindo a variavel ALTURAPAREDE o valor digitado em txtAltura<br />
METROS_LATA = txtMetros.text &#8216;atribuindo a variavel METROS_LATA o valor digitado em txtMetros</p>
<p>TOTALLATAS = (LARGURAPAREDE * ALTURAPAREDE)/METROS_LATA  &#8216;finalmente, a nossa equação</p>
<p>End Sub</em></p>
<p>Terminamos? Ainda não. De nada vale um programa bem feito, se os dados finais não são exibidos na tela. Lembrem-se: <strong>ENTRADA</strong> >>>> <strong>PROCESSAMENTO </strong>>>>> <strong>SAÍDA</strong></p>
<p>Vejam que criamos uma Label para exibir o resultado final. Basta acrescentar o comando ao fim do código:</p>
<p><em>Private Sub cmdCalcular_Click()</p>
<p>Dim TOTALLATAS, LARGURAPAREDE, ALTURAPAREDE, METROS_LATA      &#8216;declaração das variáveis</p>
<p>LARGURAPAREDE = txtLargura.text  &#8216;atribuindo a variavel LARGURAPAREDE o valor digitado em txtLargura<br />
ALTURAPAREDE = txtAltura.text  &#8216;atribuindo a variavel ALTURAPAREDE o valor digitado em txtAltura<br />
METROS_LATA = txtMetros.text &#8216;atribuindo a variavel METROS_LATA o valor digitado em txtMetros</p>
<p>TOTALLATAS = (LARGURAPAREDE * ALTURAPAREDE)/METROS_LATA  &#8216;finalmente, a nossa equação</p>
<p>lblResult.Caption = &#8220;Quantidade Necessária: &#8221; &#038; TOTALLATAS &#038; &#8221; latas.&#8221;</p>
<p>End Sub</em></p>
<p>Pode parecer estranho e confuso o recurso para &#8220;juntarmos&#8221; uma mensagem a uma variável. O nome desse processo é <strong>CONCATENAÇÃO</strong>, e usamos o operador &#8220;&#038;&#8221; para unir as informações. É só não se esquecerem do exemplo Chitãozinho &#038; Xororó, que não terão problemas com isso.</p>
<p>Segue a visualização final do nosso aplicativo:</p>
<p><img src="http://www.santarita.g12.br/aulas/imagens/imgparede3.jpg" alt="Visualização Final" /></p>
<p>Observe a LABEL inferior exibindo a saída das informações.</p>
<p>Mas e o botão &#8216;Limpar&#8217;? Simples. Sua função é limpar os campos de entrada e saída de informações para que uma nova consulta seja feita. Vamos à sua programação?</p>
<p><em>Private Sub cmdLimpar_Click()</p>
<p>txtMetros.text = &#8221; &#8221;<br />
txtAltura.text = &#8221; &#8221;<br />
txtLargura.text = &#8221; &#8221;<br />
lblResult.caption = &#8221; &#8221;</p>
<p>End Sub</em></p>
<p>Agora sim terminamos. Difícil? Nem tanto. O que vale é sempre termos o controle dos objetos e variáveis utilizados na programação. Os principais erros, estão sempre no <strong>NOME DOS OBJETOS</strong> e <strong>NOME DAS VARIÁVEIS</strong>, portanto fiquem atentos.</p>
<p>Espero que tenham aproveitado bastante a aula de hoje, e sempre que houver dúvidas, não hesitem em questionar ok?</p>
<p>Vou ficando por aqui e um grande abraço a todos!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santarita.g12.br/2007/03/19/tecnica-de-desenvolvimento-de-aplicativos-19032007/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Curso de Animação para a Web</title>
		<link>http://blog.santarita.g12.br/2006/07/18/curso-de-animacao-para-a-web/</link>
		<comments>http://blog.santarita.g12.br/2006/07/18/curso-de-animacao-para-a-web/#comments</comments>
		<pubDate>Tue, 18 Jul 2006 15:30:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category>Sem Categoria</category>

		<guid isPermaLink="false">http://blog.santarita.g12.br/2006/07/18/curso-de-animacao-para-a-web/</guid>
		<description><![CDATA[Bem Vindos ao Curso de Animação para a Web.
Nesse curso estaremos abordando as técnicas usadas para se criar uma animação voltada para a web e a ferramenta usada é o Flash.
Na primeira aula estivemos desenvolvendo antes as técnicas para o planejamento do desenho. Podemos ressaltar nessas técnicas a elaboração do texto, ou adaptação de alguma [...]]]></description>
			<content:encoded><![CDATA[<p>Bem Vindos ao Curso de Animação para a Web.<br />
Nesse curso estaremos abordando as técnicas usadas para se criar uma animação voltada para a web e a ferramenta usada é o Flash.<br />
Na primeira aula estivemos desenvolvendo antes as técnicas para o planejamento do desenho. Podemos ressaltar nessas técnicas a elaboração do texto, ou adaptação de alguma obra, a sinopse do texto, a elaboração de personagens e cenários e a escolha de sons.<br />
A partir disso ja entramos no Story Board que é um meio gráfico de representar a animação através de quadros, como uma história em quadrinhos.<br />
E para os alunos que não fizeram parte do curso de desenho, demos uma revisada no programa Flash e suas ferramentas, além de passar uma idéia da vetorização de imagens.<br />
Conforme houver a liberação dos alunos do curso para a divulgação dos seus trabalhos estaremos mostrando-os aqui no blog da escola.<br />
Espero que o curso satisfaça as expectativas de todos e tenham um bom curso
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santarita.g12.br/2006/07/18/curso-de-animacao-para-a-web/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Encerramento Curso de Desenho</title>
		<link>http://blog.santarita.g12.br/2006/07/18/encerramento-curso-de-desenho/</link>
		<comments>http://blog.santarita.g12.br/2006/07/18/encerramento-curso-de-desenho/#comments</comments>
		<pubDate>Tue, 18 Jul 2006 15:03:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category>Sem Categoria</category>

		<guid isPermaLink="false">http://blog.santarita.g12.br/2006/07/18/encerramento-curso-de-desenho/</guid>
		<description><![CDATA[Bom dia a todos,
Primeiramente gostaria de pedir desculpas devido ao fato do abandono do blog da escola.Durante a semana que se passou e que foi marcada pelo curso de Desenho, houve apenas um post e com nenhum desenho criado pelos próprios alunos. Portanto, agora irei postar alguns deles.
O primeiro desenho é uma vetorização do personagem [...]]]></description>
			<content:encoded><![CDATA[<p>Bom dia a todos,</p>
<p>Primeiramente gostaria de pedir desculpas devido ao fato do abandono do blog da escola.Durante a semana que se passou e que foi marcada pelo curso de Desenho, houve apenas um post e com nenhum desenho criado pelos próprios alunos. Portanto, agora irei postar alguns deles.</p>
<p>O primeiro desenho é uma vetorização do personagem Gazparzinho feita pelo aluno Bruno. A técnica abordada foi o uso das linhas finas no flash para uma vetorização mais correta da imagem:<br />
<div class="centralizado"><a href="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_gasparzinho_bruno.jpg" onclick="lw_image_popup('http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/gasparzinho_bruno.jpg',555,404,'gasparzinho_bruno - gasparzinho bruno'); return false;"><img src="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_gasparzinho_bruno.jpg" alt="gasparzinho_bruno - gasparzinho bruno" title="gasparzinho_bruno - gasparzinho bruno" /></a></div></p>
<p>O segundo desenho foi uma criação do aluno Henrique. è um personagem criado por ele mesmo e confeccionado totalmente no Flash:<br />
<div class="centralizado"><a href="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_personagem_henrique.jpg" onclick="lw_image_popup('http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/personagem_henrique.jpg',467,371,'personagem_henrique - personagem henrique'); return false;"><img src="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_personagem_henrique.jpg" alt="personagem_henrique - personagem henrique" title="personagem_henrique - personagem henrique" /></a></div></p>
<p>A seguir, temos a imagem de uma vetorização de uma igreja feita pela aluna Tatiany. Esta igreja foi nosso primeiro trabalho de vetorização e pintura de verdade no Flash.<br />
<div class="centralizado"><a href="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_igreja_tatiany.jpg" onclick="lw_image_popup('http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/igreja_tatiany.jpg',422,537,'igreja_tatiany - igreja tatiany'); return false;"><img src="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_igreja_tatiany.jpg" alt="igreja_tatiany - igreja tatiany" title="igreja_tatiany - igreja tatiany" /></a></div></p>
<p>E por último, mas não menos importante, um trabalho feito pelo aluno Raul. Nesse desenho foram usadas duas técnicas, a primeira que foi a vetorização da igreja igual mostrada acima pela Tatiany e a segunda que foi a abordagem da técnica de perspectiva. Podemos ver o efeito de profundidade da imagem:<br />
<div class="centralizado"><a href="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_vila_raul.jpg" onclick="lw_image_popup('http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/vila_raul.jpg',614,465,'vila_raul - vila raul'); return false;"><img src="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_vila_raul.jpg" alt="vila_raul - vila raul" title="vila_raul - vila raul" /></a></div></p>
<p>E pra finalizar eu gostaria de agradecer a todos os alunos que puderam comparecer ao Curso de Desenho e parabenizá-los pelos resultados alcançados.
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santarita.g12.br/2006/07/18/encerramento-curso-de-desenho/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Olá!</title>
		<link>http://blog.santarita.g12.br/2006/05/01/ola/</link>
		<comments>http://blog.santarita.g12.br/2006/05/01/ola/#comments</comments>
		<pubDate>Mon, 01 May 2006 23:31:38 +0000</pubDate>
		<dc:creator>Estag</dc:creator>
		
		<category>Técnico</category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Bem vindo ao blog do Educandário Santa Rita de Cássia.
Durante esse mês de Julho estaremos desenvolvendo alguns cursos de aprendizado na escola, desenvolvidos pelos alunos do Curso Técnico de Informática.
Nessa primeira semana o curso ministrado é o de Desenho, usando as ferramentas MSPaint e Macromedia Flash.
Ja se passaram duas aulas, na primeira foi ministrado o [...]]]></description>
			<content:encoded><![CDATA[<p>Bem vindo ao blog do Educandário Santa Rita de Cássia.</p>
<p>Durante esse mês de Julho estaremos desenvolvendo alguns cursos de aprendizado na escola, desenvolvidos pelos alunos do Curso Técnico de Informática.</p>
<p>Nessa primeira semana o curso ministrado é o de Desenho, usando as ferramentas MSPaint e Macromedia Flash.</p>
<p>Ja se passaram duas aulas, na primeira foi ministrado o uso do Paint, o softare fornecido pelo proprio Windows, assim como os tipos de arquivo que o computador reconhece. Os alunos realizaram o desenho da casa e ja entraram em perspectiva.</p>
<p>Na segunda aula iniciamos o uso do Flash.</p>
<p><div class="centralizado"><a href="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_estatua.gif" onclick="lw_image_popup('http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/estatua.gif',305,414,'estatua - estatua'); return false;"><img src="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_estatua.gif" alt="estatua - estatua" title="estatua - estatua" /></a></div></p>
<p>Essa imagem foi a feita pelo professor Diego para exemplificar a arte vetorial. Foi realizada totalmente no flash.</p>
<p>Dentre em breve os desenhos dos alunos estarão sendo publicados no blog conforme a autorização dos mesmos.</p>
<p>E por enquanto ficamos com o desenho da uma cidade usando perspectiva com um ponto de fuga, e ao fundo uma igreja vetorizada no flash, feita pelo professor Diego:<br />
<div class="centralizado"><a href="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_cidade.jpg" onclick="lw_image_popup('http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/cidade.jpg',575,411,'cidade - cidade'); return false;"><img src="http://blog.santarita.g12.br/up/s/sa/blog.santarita.g12.br/img/.thumb_cidade.jpg" alt="cidade - cidade" title="cidade - cidade" /></a></div>
</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.santarita.g12.br/2006/05/01/ola/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
