• Nenhum resultado encontrado

de aplicações gráficas usando janelas

N/A
N/A
Protected

Academic year: 2021

Share "de aplicações gráficas usando janelas"

Copied!
120
0
0

Texto

(1)

Universidade do Vale do Paraíba

Colégio Técnico Antônio Teixeira Fernandes Disciplina POO

Material III-Bimestre

Introdução e conceitos fundamentais

Introdução e conceitos fundamentais

de aplicações gráficas usando

janelas

http://www1.univap.br/~wagner

Prof. Responsável

Wagner Santos C. de Jesus

(2)

Histórico C#

A linguagem C# (Sharp) foi influencia da linguagens C++ e Java que ganhou popularidade na comunidade de informática popularidade na comunidade de informática quando a Microsoft decidiu incluí-la no pacote Visual Studio.

(3)

Criador C#

Engenheiro de Sistemas Microsoft, que além do C# foi que além do C# foi criador do Turbo Pascal e do Delphi.

3

(4)

Ambiente RAD (C#)

C++

C#

C++

(5)

IDE

(Ambiente Integrado

(Ambiente Integrado

de Desenvolvimento)

(6)

Conceito de IDE

É um programa de computador que reúne características e ferramentas de apoio ao desenvolvimento de software com o ao desenvolvimento de software com o objetivo de agilizar este processo.

(7)

RAD

(Desenvolvimento

(Desenvolvimento

Rápido de Aplicativos)

(8)

Conceito de RAD

Normalmente as IDE facilitam as Técnicas de RAD (Desenvolvimento Técnicas de RAD (Desenvolvimento Rápido de Aplicativos).

(9)

Mono - Desktop

9

(10)

Ilustração de Ferramenta RAD

(11)

C++ Builder

(12)

GLgBuilder

Java Class Library

AJAX Graphics Server for Mobile Deployment Cross-Platform C/C++ Libraries

(13)

Funcionamento da Ferramenta

Programador 13 IDE Editor do Visual Studio C# GDI Windows

(14)

Características

• O Java utiliza comentários Javadoc e o C# utiliza comentários baseados em XML;

• O Java utiliza a JVM, C# e .Net Framework. • Compiladores de linha de comando.

• Compiladores de linha de comando.

• Compiladores para Windows, Windows Mobile, Linux, Mac OS X e Solaris.

• Orientação à Objetos.

(15)

Janela Principal do Ambiente

(16)

Principais modelos para criação

de aplicações.

Modelo Tipos de Projetos Criados

Windows Forms Aplication (Aplicativo Windows Foms) (*)

Aplicação desktop para o sistema operacional Windows

Windows Foms) (*) operacional Windows

WPF Application (Aplicativo WPF) Aplicação Desktop para criação de templates (Código Reutilizáveis) Console Application (Aplicativo de

console) (*)

Aplicação que ocorre apartir de linha de comandos do Windows.

(17)

Linguagem de Programação

Características Operacionais

Características Operacionais

(18)

Característica principais de uma

Linguagem de Programação (C#)

Sintaxe (Escrita)

– Semântica (Significado)

– Semântica (Significado)

– Pragmática (Lógica)

(19)

Estrutura de um programa C#

Aplicação (Console)

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 {

Determina pacotes que deverão ser usados pelo programa.

{

class Program {

static void Main(string[] args) {

... }

}

} 19

Declara escopo que contém um conjunto de classes relacionadas.

(20)

Tipos de

Dados

(21)

Conceito de Tipos de Dados

O tipo de dados representa o tipo de informação que uma variável ou uma

constante pode armazenar

constante pode armazenar

estabelecendo seu limite mínimo e máximo de valores suportados.

(22)

Exemplo

4 2 1

0 0 0 0 1 0 0 1 Inteiro de 3 bits (int3)

n

2

n = 3

1 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1

int3 a = 5;

(23)

Tipos em C# (u - unsigned)

Tipo de Dados Armazenamento

Byte, Ushort, Uint e Ulong Números inteiros positivos

Sbyte, Short, Int e Long Números inteiros positivos e negativos

23

Float, Double e Decimal Números inteiros e reais (Positivos e

negativos)

Char e String Caracteres e cadeias de caracteres.

(24)

Literais (Valores pré-definidos)

Tipo de Dados Sufixo Exemplo

uint U uint valor = 35U;

long L long valor = 35L;

ulong UL ulong valor = 10UL;

ulong UL ulong valor = 10UL;

float F Float valor = 20.3F;

double D double valor = 20.3D;

(25)

Tipos Principais

Tipo de Dados Tamanho Exemplo

Int 4 bytes int valor = 35;

long 8 bytes long valor = 35;

byte 1 byte byte valor = 255;

float 4 bytes float valor = 20.3;

25

float 4 bytes float valor = 20.3;

double 8 bytes double valor = 20.3;

decimal 16 bytes decimal valor = 20.3;

char 2 bytes Apenas um caractere

string - Conjunto de caracteres

(26)

Operações

Matemáticas de

Matemáticas de

(27)

Operadores Aritméticos

+ Adição - Subtração * - Multiplicação * - Multiplicação / - Divisão

% - Resto da Divisão (Módulo)

(28)

Operadores de atribuição

= Atribuição simples

+= Atribuição com adição -= Atribuição com subtração

*= Atribuição com multiplicação *= Atribuição com multiplicação /= Atribuição com divisão

(29)

Operadores Lógicos

! - Não inverso

&& - e lógico

&& - e lógico

| | - ou lógico

29

(30)

Operadores Relacionais

= = - Igual != - Diferente de < - Menor que < - Menor que > - Maior que >= - Maior ou Igual <= - Menor ou Igual

(31)

Operadores de Incremento e

decremento

++ - Incremento

-- - Decremento

(32)

Exemplo atribuição

int a = 5;

a++; // Resultado de a = 6. int y = 4;

int y = 4;

(33)

Linguagem de Programação C#

• Atribuição

• Condição

• Condição

• Repetição

33

(34)

Condicional if()

if(<condição>) {

[Bloco-Instruções-1]

}}

else {

[Bloco-Instruções-2]

}

(35)

Condicional if()

if(<condição>)

[Instrução-1]

else

else

[Instrução-2]

35

(36)

Exemplo de if()

char sexo = ‘M’; if(sexo == ‘F’) { idade = 45; cintura = 20; nasc = “Brasileira”; }

(37)

switch(): cadeia de condição

switch(<expressão>) { case valor1: [bloco de instruções] break; case valor2: case valor2: [bloco de instruções] break; default: [bloco de instruções] break; } 37

(38)

Exemplo switch()

switch(categoria) { case 1: bonus = salario * 0.1; break; case 6: bonus = salario * 0.07;

A instrução break deve ser usada para que haja abandono da estrutura. break; case 7: bonus = 100; break; default: bonus = 0;

(39)

Estrutura de

repetição

repetição

(40)

while():Enquanto a condição

verdadeira executa.

while (<condição>) {

[bloco de instruções]

}

do{

[bloco de instruções]

(41)

Exemplo: while()

int num = 20; int contador = 0; while (num > 10) while (num > 10) { num = num - 1; contador = contador + 1; } 41

(42)

Exemplo: do while()

int num = 8; int contador = 0; do { do { num = num - 1; contador = contador + 1; } while (num != 0);

(43)

Instrução for()

for(<inicio>;<condição>;<atualização>) { [bloco de instruções] } 43

(44)

Exemplo do for()

int num = 8;

int contador = 0;

for (int i = 0; i <= 10; i++) for (int i = 0; i <= 10; i++) {

num = num - 1;

(45)

Quebra e permanência de

ciclo em estruturas de

ciclo em estruturas de

Controle.

(46)

Quebra de ciclo (break)

Estrutura for (para)

(47)

Exemplo Prático (break)

int num = 8; int contador = 0; while (num != 0) { if (contador == 2) if (contador == 2) break; num = num - 1; contador = contador + 1; } 47

(48)

Permanência de ciclo (continue)

(49)

Exemplo Prático (continue)

int num = 8; int contador = 0; while (num != 0) { if (contador == 2) { num = 0; num = 0; continue; } num = num - 1; contador = contador + 1; } 49

(50)

Entrada e Saída

de Dados

(51)

Classe: Console

Representa

a

entrada,

as

saídas, e os fluxos de erro padrão

para aplicativos do console. Esta

classe não pode ser herdada.

classe não pode ser herdada.

51 Sistema Operacional Console Processador Dispositivos de Entrada e Saída

(52)

Entrada de dados Métodos read e

readLine()

Método Descrição

read() Realiza a leitura de um

caractere pelo teclado. caractere pelo teclado.

readLine() Realiza a leitura de uma String pelo teclado.

(53)

Saída de dados Métodos write e

writeLine()

Método Descrição

write() Realiza a escrita de uma string sem salto de linhas.

53

sem salto de linhas.

writeLine() Realiza a escrita de uma String com salto de linhas.

(54)

Exemplo de Entrada e Saida

String str = Console.ReadLine();

Console.WriteLine(str);

(55)

Conversão de

Tipos de Dados

Tipos de Dados

(56)

Método: Parse()

Converte uma String em um

número de acordo com seu

tipo de dado especificado.

(57)

Exemplo de conversão de tipos

double num1 = double.Parse(Console.ReadLine()); double num2 = double.Parse(Console.ReadLine()); double soma = num1 / num2;

Console.WriteLine(soma);

(58)

Objetos Visuais Básicos

e Manipulação de

e Manipulação de

Eventos

(59)

Componente que permite uma entrada de dados em modo gráfico.

Propriedades Importantes: Propriedades Importantes:

text – Captura dados em uma caixa de texto.(String)

Visible – Boolena

lines – Array de linhas para caixa de texto.

(60)

Exemplo: textBox

Sintaxe:

textBox1.text = <String>;

Exemplo:

(61)

Componente que exibe mensagens em um formulário.

Propriedade: Propriedade:

text: Insere uma string no label.

(62)

Exemplo: Label

Sintaxe:

Label.text = <String>; Label.text = <String>;

(63)

Componente que cria um botão de comandos. Permitindo o acionamento de uma ação definida por um processo.

por um processo. Propriedade:

text: Insere um rótulo no botão de comandos.

(64)

Conceito de

Evento

(65)

Eventos

Eventos são ações disparadas

pelo usuário ou dispositivo em

um determinado momento.

65

(66)

Controle de Eventos

Sensor Solenóide Teclado Disp. Rede Evento Disparado Código de programa Disp. Rede Controlador

(67)

Evento Load()

private void Form1_Load(object sender, EventArgs e) {

MessageBox.Show("Carregou Antes ****"); }

67

(68)

Evento FormClosed()

private void Form1_FormClosed(object sender, FormClosedEventArgs e) {

MessageBox.Show("Fechar Form"); }

}

(69)

Evento DoubleClick()

private void Form1_DoubleClick(object sender, EventArgs e) {

MessageBox.Show("Efetuou clique em = "+this.Name); }

}

69

(70)

Evento MouseMove()

private void FrmTeste_MouseMove(object sender, MouseEventArgs e) {

MessageBox.Show("Moveu o mouse "); }

(71)

Evento MouseHover()

private void FrmTeste_MouseHover(object sender, EventArgs e) {

MessageBox.Show(“Ao colocar o mouse no objeto "); }

71

(72)

Eventos de

Captura de teclas

Captura de teclas

(73)

Eventos KeyDown()

private void FrmTeste_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.F3 ) { MessageBox.Show("Teste"); MessageBox.Show("Teste"); } } 73

(74)

Keys: Objeto que encapsula

constantes

Reúne um vasto número de constantes que representam valores das teclas de controle.

controle.

(75)

Controle do teclado (Keys)

“<Left>” – Pressionar a tecla seta para esquerda. “<Right>” - Pressionar a tecla seta para Direita. “<Home>” - Pressionar a tecla Home.

“<End>” - Pressionar a tecla End . “<Insert>” - Pressionar a tecla Inserir. “<Delete>” - Pressionar a tecla Delete.

“<BackSpace>” - Pressionar a tecla BackSpace. “<Enter>” - Pressionar a tecla Enter.

75

“<Enter>” - Pressionar a tecla Enter.

“<Up>” - Pressionar a tecla Seta para cima. “<Down>” - Pressionar a tecla Seta para baixo. “<PageUp>” - Pressionar a tecla Page Up.

<PageDown>” - Pressionar a tecla Page Down. “<tab>” - Pressionar a tecla Tab.

“<Escape>” - Pressionar a tecla ESC. “<Space>” – Pressionar a tecla espaço.

(76)

KeyCode

Vem a ser uma propriedade do objeto (e) da classe KeyEventArgs.

Exemplo:

if (e.KeyCode == Keys.F2 ) {

(77)

Evento: KeyUp

private void FrmTeste_KeyUp(object sender, KeyEventArgs e) {

if (e.KeyCode == Keys.A) {

MessageBox.Show("Liberado a tecla <A>"); MessageBox.Show("Liberado a tecla <A>"); }

}

77

(78)

Evento KeyPress

private void FrmTeste_KeyPress(object sender, KeyPressEventArgs e) {

MessageBox.Show("Caracter obtido foi "+e.KeyChar ); }

}

(79)

Objetos de

Controle de listas

Controle de listas

de Dados

(80)

Caixa de combinação permite inserir uma lista de dados escondida para um futura seleção.

Propriedade: Items Métodos:

Add(<ExpS>): Adiciona uma string na lista. Add(<ExpS>): Adiciona uma string na lista.

Insert(<ExpN>,<ExpS>): Insere em uma posição da lista.

Remove(<ItemL>): Remove o item informado da lista.

(81)

Exemplo Prático de ComboBox:

ComboBox1.Items.Add(“Item-1”); ComboBox1.Items.Add(“Item-2”); ComboBox1.Items.Add(“Item-3”); ComboBox1.Items.Add(“Item-3”); ComboBox1.Items.Add(“Item-4”); ComboBox1.Items.Add(“Item-5”); 81

(82)

Exemplo 2: Prático de Insert:

Insere um elemento e uma determinada posição da lista.

Exemplo:

(83)

Exemplo 3: Prático de Remove():

Retira uma String, se a mesma, existir na lista.

Exemplo:

ComboBox1.Items.Remove(“Item-3”);

(84)

Exemplo 4: Prático de Remove():

Retira um elemento em uma determinando o elemento da lista.

Exemplo:

(85)

Método: Count

Retorna com a quantidade de elementos de uma lista.

Sintaxe: Sintaxe:

<VarInt> = comboBox1.items.Count;

(86)

Caixa de combinação permite

inserir uma lista de dados onde os

elementos serão apresentados na tela

elementos serão apresentados na tela

em determinado número de linhas.

(87)

Observação

Todos os métodos mencionados

na caixa de combinação serão

na caixa de combinação serão

herdados pela lista.

(88)

Capturando Dados de

uma Lista ou Combo.

uma Lista ou Combo.

(89)

• Captura um elemento da lista ou combo mediante a seleção do usuário.

• Captura um elemento da lista informado o

Saída de dados usando Lista ou

Combo.

89

• Captura um elemento da lista informado o indice.

• Captura vários elementos selecionados da lista (Lista).

(90)

Propriedaede Items[],Text

Método toString()

(91)

text

Captura um elemento da lista ou combo mediante a seleção do usuário.

Exemplo:

String dado = comboBox1.text;

(92)

Items[]

Captura um elemento da lista informado o índice.

Exemplo:

(93)

Propriedade: SelectionMode

Determina se caixa de lista será de Multipla seleção ou mono seleção.

Status da propriedade: Status da propriedade:

None: Seleção Simples

MultiSimple: Seleções multiplas

(94)

Determina Múltiplas seleções

listBox1.SelectionMode = SelectionMode.MultiSimple;

Possibilita ao usuário a seleção de

Possibilita ao usuário a seleção de

mais de um item em uma lista.

(95)

Método: GetSelected()

Verifica se um determinado item da lista

encontra-se selecionado ou não, retornando TRUE ou FALSE.

TRUE ou FALSE.

Sintaxe:

<VarB> = listBox1.GetSelected(<indice>);

(96)

Captura os elementos

selecionados em uma lista

for (int i = 0; i <= listBox1.Items.Count - 1; i++) {

if( listBox1.GetSelected(i)) if( listBox1.GetSelected(i))

MessageBox.Show(listBox1.Items[i].ToString()); }

(97)

Botões de Rádio e

Caixas de Verificação

Caixas de Verificação

(98)

Botão

de

rádio

Controle

usado

quando

se

encontra

um

número

reduzido de opções, dependendo de

reduzido de opções, dependendo de

apenas uma acontecer para que haja a

execução de um processamento.

(99)

Propriedades principais

(RadioButton)

Propriedade Descrição

checked Retorna um booleano caso botão esteja selecionado.

Name Cria o nome do objeto da

99

Name Cria o nome do objeto da classe RadioButton

(100)

Exemplo RadioButton

int sx = 1; if (!RadioButton1.Checked) { { sx = 2; }

(101)

CheckBox:

Cria

caixa

de

verificação permitindo que todos

os

dados

sejam

passiveis

de

os

dados

sejam

passiveis

de

seleção.

(102)

Propriedades principais

(CkeckBox)

Propriedade Descrição

checked Retorna um booleano caso botão esteja selecionado.

Name Cria o nome do objeto da

Name Cria o nome do objeto da classe RadioButton

(103)

Exemplo: CheckBox

if (CheckBox1.Checked) { ... 103 ... }

(104)

Controle de

Calendário

(105)

Realiza a criação de uma

caixa

de

combinação

no

caixa

de

combinação

no

formato de calendário.

(106)

Exemplo: DateTimePicker

Saída do objeto

DateTimePicker

(107)

Propriedades (DateTimePicker)

Propriedade Descrição

Value Retorna a Data escolhida com sua respectiva hora, para um objeto DateTime.

Day Retorna o dia para uma data

107

Day Retorna o dia para uma data escolhida.

Month Retorna o mês para uma data escolhida.

Year Retorna o ano para uma data escolhida.

(108)

Exemplo: DataTimePicker

DateTime data = dateTimePicker1.Value; MessageBox.Show(""+data.Day ) ;

MessageBox.Show("" + data.Month ); MessageBox.Show("" + data.Month ); MessageBox.Show("" + data.Year );

(109)

Leitura e Exibição de

Imagem

Imagem

(110)

Permite exibir como saída o

desenho de uma imagem.

(111)

Propriedades (PictureBox)

Propriedade Descrição

Image Permite exibir uma imagem no vídeo. SizeMode Normal,StrechImage, AutoSize e

111

SizeMode Normal,StrechImage, AutoSize e CenterImage.

(112)

Load():Método que carrega uma

imagem em tempo de execução

Sintaxe:

pictureBox1.Load(<ExpS>);

<ExpS>:determina o caminho e o nome da <ExpS>:determina o caminho e o nome da imagem.

(113)

Controle de Tempo

Controle de Tempo

(114)

Cria um controlador de tempo

para

resolver

problemas

de

para

resolver

problemas

de

tempo em uma determinada

aplicação.

(115)

Propriedades: Timer

Propriedade Descrição

Enable Liga e desliga o temporizador (true,False).

Interval Determina o tempo de espera para

115

Interval Determina o tempo de espera para execução do evento dentro do

(116)

Exemplo de atividade

temporizada

private void timer1_Tick_1(object sender, EventArgs e) {

label2.Text = "Mostra - "+x; x++;

(117)

Barra de Progressão

Barra de Progressão

(118)

Barra de Progressão

Controle que permite verificar

evolução

de

um

determinado

evolução

de

um

determinado

(119)

Propriedade (ProgressBar)

Propriedade Descrição

Maximum Valor máximo de limite da barra de progressão.

Minimum Valor mínimo para inicio da barra de

119

progressão.

Value Valor de encaminhamento de progresso da barra.

Step Número de saltos para preenchimento da barra de progressão.

(120)

Exemplo de evolução da barra de

progressão

private void timer1_Tick_1(object sender, EventArgs e)

{

if(progressBar1.Value < 100) if(progressBar1.Value < 100) progressBar1.Value += 1; }

Referências

Documentos relacionados

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

- Se o estagiário, ou alguém com contacto direto, tiver sintomas sugestivos de infeção respiratória (febre, tosse, expetoração e/ou falta de ar) NÃO DEVE frequentar

O TBC surge como uma das muitas alternativas pensadas para as populações locais, se constituindo como uma atividade econômica solidária que concatena a comunidade com os

Compreendendo- se que o estudo dos eventos do século XX podem ser relevantes e esclarecedores para a compreensão da história e da sociedade de hoje, e levando-se em conta o

A proposta desta pesquisa objetivou desenvolver o estudante para realizar a percepção sobre o estudo da complexidade do corpo humano, onde o educando teve oportunidade

Neste capítulo, será apresentada a Gestão Pública no município de Telêmaco Borba e a Instituição Privada de Ensino, onde será descrito como ocorre à relação entre

Dessa maneira, os resultados desta tese são uma síntese que propõe o uso de índices não convencionais de conforto térmico, utilizando o Índice de Temperatura de Globo Negro e

Este artigo está dividido em três partes: na primeira parte descrevo de forma sumária sobre a importância do museu como instrumento para construção do conhecimento, destaco