You are on page 1of 67

PROGRAMAO VISUAL (C#)

Edquel Farias
Estrutura de um programa C# utilizando o
Visual Studio

Edquel Farias
Comeando C#
Clique em New Project para criar um novo projeto. A tela para
escolher o tipo de projeto e salv-lo apresentada,
Comeando C#
Comeando C#
Inicie o Visual Studio (se ainda no o fez).
Na Start Page escolha New Project, ou caso a Start Page no esteja
visvel, na barra de menu escolha File, New Project.
A caixa de dilogo exibida.
Selecione no painel esquerda o template Visual C#, no painel
central escolha Windows Forms Application.
Preencha na caixa de texto Name: HelloWorld (tudo junto mesmo).
Location: escolha o local onde deseja salvar o seu projeto.
Mantenha selecionado: Create diretory for solution
Clique em OK.

O IDE do Visual Studio cria o projeto para voc comear a trabalhar.


Entendendo a Janela de Desenvolvimento do Visual
Studio
Windows Forms Aplication, o Visual Studio j nos fornece um Form
(Formulrio) no qual iremos inserir os nossos componentes (ou
controles), como por exemplo, botes, labels, caixa de texto, etc.
As janelas que so apresentadas tambm podem ser configuradas e
podem aparecer de forma diferente no seu ambiente de
desenvolvimento.
Caso deseje voc poder restaurar o layout das janelas. Clique no
menu Window e depois em Reset Window Layout.
Entendendo a Janela de Desenvolvimento do Visual Studio
Janela Solution Explorer

Quando voc cria um novo projeto, o Solution Explorer exibe todo o contedo
desse projeto, ou seja, essa janela lista todos os arquivos do seu projeto.
Nessa janela voc gerencia os arquivos que fazem parte do projeto
Caso no esteja visualizando a janela do Solution Explorer, clique no menu View e
depois em Solution Explorer, ou utilize as teclas de atalho Ctrl+Alt+L..
Entendendo a Janela de Desenvolvimento do Visual Studio
Janela Toolbox
A Toolbox uma caixa de
ferramentas que contm os
controles (ou componentes) que
podem ser utilizados para criar
nossas aplicaes. Utilizando
programao visual, podemos
escolher os controles que
desejamos inserir no nosso
Form. Basta selecionar o
controle, clicar, arrastar e
soltar no Form na posio que
desejar inserir o controle
Caso voc no esteja
visualizando a sua Toolbox,
clique no menu View e depois
em Toolbox, ou utilize as teclas
de atalho Ctrl+Alt+X.
os controles que voc utilizar com maior frequncia sero: Label,
TextBox e Button.
Estrutura de um programa em C#
Label (etiqueta/rtulo): utilizada para exibir informaes ao
usurio;
TextBox (caixa de texto): utilizado para entrada ou
visualizaes de dados.
Button (boto): utilizado para disparar um evento (ao) por
meio do clique.
Entendendo a Janela de Desenvolvimento do Visual Studio
Janela Properties

permite a manipulao das


propriedades de um Form ou
controle.
As propriedades especificam
informaes sobre um controle,
como por exemplo, tamanho,
cor, texto, posio, name, etc.
Quando voc seleciona um
controle (componente), do lado
direto da janela Properties
aparece o nome da propriedade
e do lado esquerdo o valor para
essa propriedade. Quando
fazemos alguma alterao na
propriedade, esta ficar grafada
em negrito.
.
Caso no esteja visualizando a janela Properties, clique em View
e depois em Properties Window ou utilize a tecla de atalho
Vamos praticar?
O usurio dever preencher o seu nome na textBox e quando pressionar o boto,
aparecer a mensagem Hello World e o nome digitado na textBox
Comeando C#
Vamos comear.
1. Inicie o Visual Studio (se ainda no o fez).
2. Na Start Page escolha New Project, ou caso a Start Page no esteja visvel,
na barra de menu escolha File, New Project.
A caixa de dilogo exibida.
1. Selecione no painel esquerda o template Visual C#, no painel central
escolha Windows Forms Application.
2. Preencha na caixa de texto Name: HelloWorld (tudo junto mesmo).
3. Location: escolha o local onde deseja salvar o seu projeto.
4. Mantenha selecionado: Create diretory for solution
Clique em OK.
O IDE do Visual Studio cria o projeto para voc comear a trabalhar
Criando o design do Form
Voce tera uma figura mais ou menos assim:
Comeando C#
Criando o design do Form
Criando o design do Form
1. Aps fixar (Auto Hide) a Toolbox, abra o n Common Controls, selecione o
controle Label, clique, segure e arraste a Label no canto superior esquerdo
do Form.
2. Selecione o controle TextBox e coloque-o ao lado da Label no Form.
3. Selecione o controle Button e coloque abaixo da textBox no Form.
Criando o design do Form
Criando o design do Form
1. Aps fixar (Auto Hide) a Toolbox, abra o n Common Controls, selecione o
controle Label, clique, segure e arraste a Label no canto superior esquerdo
do Form.
2. Selecione o controle TextBox e coloque-o ao lado da Label no Form.
3. Selecione o controle Button e coloque abaixo da textBox no Form.
Criando o design do Form
Propriedades dos controles

Cada controle possui um conjunto de propriedades.


Name: a propriedade name define um nome nico para o seu controle, ou
seja, estamos dando uma identificao para o controle e que deve ser nica.
Text: a propriedade text de uma TextBox utilizada para inserir ou receber
dados. Tambm utilizada para apresentar o texto que vai aparecer em uma
Label, o ttulo do Form ou o rtulo de um Button.
Criando o design do Form
Propriedades dos controles
Agora vamos trabalhar nas propriedades desses controles.
Criando o design do Form Propriedades dos controles
Agora vamos trabalhar nas propriedades desses controles.

Obs.: a propriedade name no visvel para o usurio. A propriedade name


deve ser nica para cada controle/objeto. No podemos ter mais de um
controle, componente, objeto, varivel, etc com o mesmo name.
Criando o design do Form Propriedades dos controles
Obs.: a propriedade name no visvel para o usurio. A propriedade name
deve ser nica para cada controle/objeto. No podemos ter mais de um
controle, componente, objeto, varivel, etc com o mesmo name.
Entendendo os arquivos gerados pelo Visual Studio
Assim que voc salvou o seu projeto, o Visual Studio criou esses trs arquivos
automaticamente: Form1.cs, Form1.Designer.cs e Program.cs. Esses arquivos
esto na janela Solution Explorer.
Form1.cs: contm o cdigo C# que define o comportamento do formulrio.
Form.Designer.cs: contm o cdigo que define o formulrio e seus objetos.
Program.cs: contm o cdigo que inicia o programa e exibe o formulrio.
Escrevendo o cdigo do programa Hello World
Voc tem que estar em modo de desenvolvimento e no executando o seu programa.
Uma forma mais rpida e simples para comear clicando duas vezes no boto que
criamos.
Pode-se observar que o IDE j criou muito cdigo, mas ainda temos que acrescentar o
nosso cdigo.
Voc deve ver algum cdigo semelhante ao apresentado a seguir.
Escrevendo o cdigo do programa Hello World
Veja que o IDE criou o cdigo para o nosso boto btnMensagem para o evento clique.
dentro desse par de chaves ( { } ) que iremos escrever o nosso cdigo. Veja o cdigo a
seguir.
MessageBox.Show("Hello World " + txtNome.text);.
Escrevendo o cdigo do programa Hello World
O MessageBox um objeto que apresenta uma caixa de mensagem na tela.
Dentro do mtodo Show codificamos o texto Hello World . O sinal de mais ( + ),
significa concatenar, ou seja, unir textos.
O nome que o usurio digitar na nossa txtNome (TextBox) est armazenado na
propriedade Text. Dessa forma, para recuperar o texto que foi digitado colocamos o
nome do controle seguido de um ponto ( . ) e a propriedade text (txtNome.text).
Sempre que quisermos recuperar o texto armazenado em um controle, colocamos o
nome do controle, ponto, a propriedade text.
Para executar o programa, pressione a tecla F5 ou clique no cone Start ( ) na barra de
menu.
Escrevendo o cdigo do programa Hello World
Para finalizar, feche o programa Hello World e volte ao Visual Studio.
Voc tambm poder encerrar o programa Hello World pelo Visual Studio de vrias
formas: acesse o menu Debug, Stop Debugging; ou pressionando as teclas Shitf+F5; ou
clicar no boto stop localizado na barra de ferramentas.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace HeloWorld
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void btnMensagem_Click(object sender, EventArgs e)


{
MessageBox.Show("Hel World" + txtnome.Text);
}
}
}
Tipos e declarao de variveis

Edquel Farias
Tipos de dados para nmeros inteiros

Para qualquer clculo que envolva dinheiro ou finanas, o tipo decimal deve ser sempre
utilizado. S este tipo tem a preciso adequada para evitar os erros crticos de
arredondamento.
Outros tipos de Dados
Ainda existem outros trs tipos de dados. Veja quais so:

Para armazenar texto utilizamos o tipo de dado string, porm esse tipo de dado no
primitivo. C# no tem o tipo de dado primitivo string.
O compilador usa as informaes do tipo para verificar se as operaes que so
executadas em seu cdigo so seguras.
Por exemplo, se voc declarar uma varivel do tipo int, o compilador permite usar a
varivel em operaes de soma e subtrao. Se voc tentar realizar essas mesmas
operaes em uma varivel do tipo bool, o compilador ir gerar um erro.
Identificadores

Identificadores so nomes que voc utiliza para identificar (nomear) os elementos no


seu programa, tais como, namespaces, classes, mtodos e variveis.

Identificadores devem seguir estas regras:

Somente letras (maisculas e minsculas), dgitos (nmeros), e o caractere underline _


(sublinhado) so permitidos.

Um identificador pode ter um ou mais caracteres.

Um identificador deve comear com uma letra. O primeiro caractere no pode ser em
hiptese alguma um nmero.

No pode ter espaos em branco.

identificadores devem ser nicos dentro de um determinado escopo.


Identificadores

Identificadores so case-sensitive, ou seja, diferenciam letras maisculas de minsculas.

Palavras reservadas da linguagem no podem ser utilizadas para identificadores, bem


como o nome dos controles.

No utilizar acentuao e nem .

Utilize as mesmas regras para nomear os controles da Linguagem C#.

Algumas convenes que devem ser seguidas para definir os identificadores:

Identificadores devem ser legveis.

No utilize abreviaes.
Identificadores

No utilize abreviaes.

Identificadores devem transmitir o significado, ou seja, d nomes significativos que


expressam o que o identificador representa.

Como vimos, em C#, os identificadores so case-sensitive. As convenes de


nomenclatura recomendadas sugerem a utilizao dos seguintes padres:
Identificadores

Regras de Notao
Variveis

local de armazenamento que contm um valor e que pode sofrer alterao durante a
execuo de um programa.
posio (local) da memria do computador em que um valor pode ser armazenado para
ser utilizado por um programa.
um espao reservado em memria no computador que armazena valores
temporariamente.

A linguagem C# uma linguagem estaticamente tipada e fortemente tipada.


Uma linguagem estaticamente tipada exige que os tipos das variveis sejam
definidos antes da compilao
Uma linguagem fortemente tipada exige que os valores armazenados na varivel
sejam compatveis com o seu tipo.
Na linguagem C# as variveis devem ser declaradas antes de serem utilizadas
Declarando Variveis

definir um tipo de dados e um identificador (nome). A declarao de variveis pode ser


feita em qualquer lugar dentro de um bloco.
Lembre-se das regras descritas acima (no item Identificadores) para declarar variveis.
O nome da varivel deve ser nico dentro de um escopo no qual ela utilizada.
procure dar nomes significativos para facilitar o entendimento posteriormente e mesmo
para facilitar a leitura do seu cdigo por outras pessoas.
primeiramente informar o seu tipo de dados e a seguir o nome da varivel ou das
variveis daquele mesmo tipo, finalizando o comando com ponto-e-vrgula ( ; ).
Declarando Variveis

No primeiro exemplo (linha 1) acima, foi declarada uma varivel do tipo inteiro (int) com
o nome idade. No segundo (linha 2), declaramos quatro variveis do tipo double: nota1,
nota2, nota3, media.

Um valor pode ser atribudo a uma varivel usando o sinal de igual que o operador de
atribuio ( = ). Quando atribumos um valor varivel estamos inicializando-a.
Declarando Variveis

Podemos tambm declarar e inicializar a varivel em uma nica instruo, ou seja,


atribuir um valor varivel na declarao.

Note que para as variveis do tipo double o separador de casas decimais o ponto ( . ).
Veja tambm que as variveis nota1, nota2 e nota3 foram inicializadas e media no.
Depois que uma varivel for declarada, ela no poder ser redeclarada com um novo
tipo.
Tambm no pode ser atribudo a uma varivel um valor que no compatvel com seu
tipo declarado.
Tomando como exemplo a varivel idade que foi declarada com o tipo int, no ser
permitido fazer a seguinte atribuio: idade = true;..
Converso de tipos

Variveis possuem diferentes tipos.


O tipo determina o tipo de dados que uma varivel pode conter, por exemplo, uma
varivel int pode conter somente dados numricos inteiros, sem casas decimais; uma
varivel string pode conter somente texto.
O que acontece quando se desejar exibir um int em um controle MessageBox ou em um
Label ou at em um TextBox que requerem texto,
ou quando voc digitar um nmero em um controle TextBox, que armazena texto, para
ser atribudo a uma varivel do tipo numrica?
Essa uma situao comum quando estamos desenvolvendo uma aplicao.

Quando isso ocorrer, voc precisa realizar a converso entre tipos de dados.
Converso de tipos
Converso entre tipos numricos

Essa converso pode ocorrer de forma explicita (tambm conhecida como Cast)
ou implcita.

Forma implcita: quando atribumos um valor de um tipo 'menor' para um tipo


'maior'. Quando um tipo convertido para outros tipos sem perda de dados.
Por exemplo:
de short para int
Converso explcita: quando atribumos um valor de tipo 'maior' para outra de
tipo 'menor. Ocorre quando dados podem ser perdidos.
de int para short
Converso de tipos
o tipo int tem 32 bits o tipo short tem 16 bits.
Nesse caso sero descartados os valores acima de 16 bits.
Para evitar que isso acontea devemos forar o C# a realizar uma converso
entre os tipos, uma converso explcita, tambm chamada de coero (cast).
Converso implcita de tipos numricos
A tabela a seguir mostra as converses numricas implcitas.
Converso de tipos numricos para string e
de string para tipos numricos

Voc pode converter uma string para um nmero usando os mtodos da


classe Convert ou usando o mtodo Parse encontrado em vrios tipos
numricos (int, long, float, etc.).
Vamos ver o seguinte exemplo:
Voc tem um Form com um controle TextBox. Quando o usurio digitar um
nmero nesse TextBox e clicar em um boto, vamos atribuir o valor digitado
no TextBox a uma varivel do tipo inteiro
Converso de tipos numricos para string e
de string para tipos numricos
Agora vamos fazer ao contrrio, voc tem uma varivel numrica do tipo int e
quer que esse valor seja apresentado no controle TextBox.
Converso implcita de tipos numricos
A tabela a seguir lista alguns dos mtodos da classe Convert que voc pode
utilizar.
Converso de tipos numricos para string e
de string para tipos numricos
Agora vamos fazer ao contrrio, voc tem uma varivel numrica do tipo int e
quer que esse valor seja apresentado no controle TextBox.

Por exemplo, a chamada ao mtodo Convert.ToInt32(String) converte uma


entrada do tipo string para um inteiro. Caso essa entrada no possa ser
convertida acontecer um erro.
Converso de tipos
Colocando em pratica
criar um projeto para declarar variveis, fazer a soma das variveis e apresentar
o resultado da operao.
Veja a interface grfica desse exemplo

O form contm os seguintes controles:


a) 3 Label;
b) 3 TextBox;
c) 2 Button.
Converso de tipos Colocando em pratica

Vamos comear.
1. Inicie o Visual Studio (se ainda no o fez).
2. Na Start Page escolha New Project, ou caso a Start Page no esteja visvel,
na barra de menu escolha File, New Project.
A caixa de dilogo exibida.
1. Selecione no painel esquerda o template Visual C#, no painel central
escolha Windows Forms Application.
2. Na caixa de texto Name: Variaveis.
3. Location: escolha o local onde deseja salvar o seu projeto.
4. Mantenha selecionado: Create diretory for solution.
5. Clique em OK
Converso de tipos Colocando em pratica
Criando o Design do Form
1. Aps fixar (Auto Hide) a Toolbox, abra o n Common Controls, e insira os
controles no Form. Para inserir os controles, selecionar o controle na
ToolBox, clicar, segurar e arrastar para a posio que desejar dentro do
Form.
Voc poder ter um layout parecido com a figura a seguir, mas no se preocupe
se o posicionamento e tamanho dos controles no estiverem iguais ao da figura
porque hoje voc vai trabalhar com novas propriedades que alteram o layout
Converso de tipos Colocando em pratica
Criando o Design do Form
Selecione os controles e altere as propriedades conforme definido na tabela abaixo:
Converso de tipos Escrevendo o cdigo do
programa Variaveis
Agora que voc j criou a interface e alterou as propriedades dos controles, vamos
codificar o boto btnInteiros. Para abrir o editor de cdigo d duplo clique no boto
btnInteiros e digite o cdigo a seguir

:/*declarao das variveis*/


int a, b, soma;

/* entrada de dados*/

a = Int32.Parse(txtA.Text);
b = Int32.Parse(txtB.Text);

/*processamento*/
soma = a + b;

/*sada de dados*/
txtResultado.Text = soma.ToString();
Converso de tipos Escrevendo o cdigo do
programa Variveis
Agora vamos codificar o boto btnReais.
Volte para o modo design e d duplo clique no boto btnReais e digite o cdigo a seguir.
/*declarao das variveis*/
double a, b, soma;

/*entrada de dados*/
a = Convert.ToDouble(txtA.Text);
b = double.Parse(txtB.Text);

/*processamento*/
soma = a + b;

/*sada de dados*/
txtResultado.Text = soma.ToString();
Converso de tipos Escrevendo o cdigo do
programa Variveis
Os cdigos devem ter ficado parecidos com a imagem a seguir..
Converso de tipos Escrevendo o cdigo do
programa Variveis
Veja que no foi preciso digitar as linhas dos eventos dos botes: private void
btnInteiros...... e private void btnReais.....
Quando voc deu duplo clique em cada boto, o editor de cdigo do Visual Studio
criou esses cdigos.
Agora pressione F5 para executar o seu programa e faa alguns testes.
Tipos de dados para nmeros inteiros
Tipo
Valores permitidos (intervalo)
Tamanho (bits)
sbyte
128 e 127
8
byte
0 e 255
8
short
32768 e 32767
16
ushort
0 e 65535
16
int
2147483648 e 2147483647
32
uint
0 e 4294967295
Revisando aulas anteriores

Edquel Farias
Introduo aos Conceitos da Linguagem C#
Principais Elementos de um Programa em C#

Um programa desenvolvido em C# contm quatro elementos principais:


pelo menos uma declarao de namespace,
uma classe, um nico mtodo Main, e uma declarao de
programa.
Os arquivos de cdigo-fonte dos programas tem a extenso .cs.

56
Introduo aos Conceitos da Linguagem C#
Principais Elementos de um Programa em C#

Namespace em C# - (Espaos de nomes)


Um namespace agrupa vrios recursos do C# em categorias
relacionadas. A plataforma .NET (.NET Framework) fornece um rico
conjunto de namespaces para serem usados com a Linguagem C#.
Esses namespaces contm cdigos que podem ser reutilizados tornando a
programao mais fcil e rpida.
O C# contm muitas classes predefinidas e agrupadas em namespace
(espaos de nomes) que esto no .NET Framework Class Library, ou
seja, so as bibliotecas de classes da plataforma .NET

57
Introduo aos Conceitos da Linguagem C#
Principais Elementos de um Programa em C#
Namespace em C# - (Espaos de nomes)
Diretiva using
A diretiva using utilizada para especificar os namespaces que usamos
em cada programa. Veja o exemplo da seguinte declarao:

Essa declarao informa ao compilador que estamos utilizando


o namespace System, que nos permite, por exemplo, escrever a instruo
de forma abreviada Console.WriteLine, em vez
de System.Console.WriteLine, em todo o programa.
A instruo Console.WriteLine utilizada para que o programa apresente
(ou imprima) uma linha de texto na sada padro do computador.
A classe Console fornece o mtodos que permitem aos programas C#
apresentarem strings (textos) ou outros tipos de informaes no prompt de
comando do Windows, por exemplo.

58
Introduo aos Conceitos da Linguagem C#
Principais Elementos de um Programa em C#
A figura a seguir apresenta alguns namespaces adicionados
automaticamente em um projeto

59
Introduo aos Conceitos da Linguagem C#
Principais Elementos de um Programa em C#
Como vamos desenvolver aplicativos que utilizam interface grfica, o
namespace System.Windows.Forms contm muitas classes que ajudam os
desenvolvedores de C# a definirem as GUIs (Graphical User interface -
Interface Grfica do Usurio) para seus aplicativos.
Os componentes de GUI, como por exemplo, botes, , caixa de
texto, facilitam a entrada de dados por parte do usurio e a formatao ou
apresentao de sada de dados para o usurio.

60
Introduo aos Conceitos da Linguagem C#
Principais Elementos de um Programa em C#
Algumas Regras da Linguagem C#
A linguagem C# case sensitive, ou seja, o C# diferencia letras maisculas
de minsculas. Portanto, Total diferente de total, que diferente de toTal.
Um par de chaves ( { } ) delimita o corpo de toda definio de classe ou
mtodo.
As instrues (comandos) devem terminar com ponto-e-vrgula ( ; ).

61
Mais detalhes

Tipos parciais e Generics, trabalham com declaraes de classes,


estruturas e interfaces.
Parciais permitem que eles sejam divididas em mltiplas partes em
diferentes arquivos fontes,
Generics permitem que sejam parametrizados pelos tipos de dados que
eles armazenam e manipulam
Implementaao de Generic:
StackGenericsT<int> st = new StackGenerics( );
Mais detalhes

Programas escritos em C# rodam sob um ambiente gerencivel: todo o


controle de memria feito pelo .NET Framework, reduzindo assim falhas
na programao enquanto a alocao e liberao de um objeto na
memria.
Classes agrupadas com funes similares
System.Drawing para grficos,
System.Collections para estrutura de dados
System.Windows.Forms para o sistema Windows Form.
Palavras Chaves C#
Exercicio
Principais Elementos de um Programa em C#
A diretiva using utilizada para especificar os namespaces que podemos
utilizar nos programas.
Selecione a alternativa correta referente a namespace.
.
a) Namespace s pode ser utilizado em bibliotecas de ligao dinmica (.dll).

b) Um namespace no faz parte dos principais elementos de um programa em C#.

c) namespace agrupa vrios recursos do C# em categorias relacionadas que esto


no .NET Framework Class Library.

d) As classes para desenvolvimento de aplicaes grficas esto definidas no


namespace System.

65
Exercicio
Principais Elementos de um Programa em C#
Analise as afirmaes a seguir sobre a Linguagem de Programao C#.
I. A linguagem C# NO case sensitive, ou seja, no faz distino entre
letras maisculas e minsculas.
II. C# uma linguagem de programao orientada a objeto.
III. C# uma linguagem de programao orientada a eventos.
IV. C# foi projetada especificamente para a plataforma .NET
correto apenas o que se afirma em
a) I e II
b) I e III
c) II, III e IV
d) I e IV

66
Resoluo exerccio
Principais Elementos de um Programa em C#
A diretiva using utilizada para especificar os namespaces que podemos
utilizar nos programas.

Selecione a alternativa correta referente a namespace.


namespace agrupa vrios recursos do C# em categorias relacionadas
que esto no .NET Framework Class Library
namespace agrupa vrios recursos do C# em categorias relacionadas que
esto no .NET Framework Class Library.

67

You might also like