Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

32
Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula

Transcript of Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

Page 1: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

Windows Forms

2º Semestre 2010 > PUCPR > TPU

Bruno C. de PaulaBruno C. de Paula

Page 2: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

Resumo O objetivo desta aula é conhecer a biblioteca

Windows Forms; Esta biblioteca é utilizada na criação de

interfaces gráficas voltadas para ambiente Desktop;

Vamos nos focar, nesta aula, em entender a organização de arquivos do Windows Forms, os grupos de componentes e sua instanciação em tempo de execução;

Em ambiente Windows temos muito mais poder do que em ambiente web: threads, sockets, impressão, 3d, etc.

211/04/23

Page 3: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

3

Você não está aprendendo só Windows Forms!A filosofia RAD (Rapid Application

Development) aplicada em Windows Forms é semelhante a de diversas bibliotecas: Swing, Qt, VLC (Delphi),etc.

Page 4: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

4

Grupos de Componentes

Visual Studio 2008 / Windows Forms;Aproximadamente 60 controles já

instalados;A maior parte dos componentes é

derivado de uma classe do namespace System.Windows;

Componentes tem um aspecto diferente em tempo de projeto e em tempo de execução.

Page 5: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

5

Tempo de Projeto

Page 6: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

6

Tempo de Execução

Page 7: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

7

Tempo de Projeto

Page 8: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

8

11/04/23

Common Controls

Common Controls:21 controles;principais controles;interface Windows

básica;

Page 9: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

9

Containers

6 controles;Organizam os

demais controles em painéis, abas, grupos;

Page 10: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

10

Menus e Toolbars

5 controles; Itens de menu;Barras de

ferramentas;

Page 11: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

11

Data

4 controles;Acesso a:

banco de dados;

Arquivos XML;

Arquivos texto;

Etc.

Page 12: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

12

Components

14 componentes;Componentes diversos;Sem representação

visual;

Page 13: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

13

Printing

5 controles;Gerenciamento de

impressão;

Page 14: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

14

Dialogs

5 componentes;Caixas de

Diálogo;

Page 15: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

15

WPF Interoperability

1 componente;Permite que se

use interfaces WPF dentro de Windows Forms.

Page 16: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

16

Outros

Centenas de opções instaláveis pela Internet;

Ver: http://windowsclient.net/default.aspx

Page 17: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

17

Windows Forms Designer Componentes visuais:

Caixa de Texto, Botão, etc.

Componentes não-visuais:Timer;Acesso à Porta Serial;

Componentes instanciados em tempo de execução.

Page 18: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

18

Page 19: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

19

Componentes Visuais e Não-Visuais

Definição e Instanciação automática ao arrastar o controle na tela;

Valores das principais propriedades também são preenchidos;

No caso dos componentes visuais: colocação em um contâiner pai;

Cada componente está associado a uma variável da classe do formulário no qual está o componente (FormXXX.Designer.cs);

Page 20: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

Nome da Instância

Classe do Componente

Page 21: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

21

Definição automática

Page 22: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

22

Instanciação automática

Page 23: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

23

Preenchimento de Propriedades

Page 24: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

24

Colocação em um contâiner pai

Page 25: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

25

Grupos de Propriedades

Accessibility: acessibilidade;Appearance: aparência gráfica,

corresponde ao CSS, depende do componente;

Behavior: comportamento, geralmente associado a um código, depende do componete;

Data: ligação entre controles e dados;

Page 26: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

26

Grupos de Propriedades

Design: como a instância do objeto deve ser criada;

Focus: controla a validação dos dados;

Layout: estilo de layout, corresponde ao layout em CSS.

Page 27: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

27

Componentes criados em tempo de execução (criação e propriedades)

// 1) Criar a instância do botão.Button b = new Button(); // 2) Colocar na posição (0,0) b.Location = new Point(0, 0); // 3) Criar com largura 100 x 20pxb.Size = new Size(100, 20); // 4) Colocar o texto no botão.b.Text = "Sou um botão!";

Page 28: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

28

Eixo X e Y na tela!

Page 29: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

29

Componentes criados em tempo de execução (colocação em um contâiner pai)

// 5) Colocar em Contâiner Pai. Supondo que esteja no form.

Controls.Add(b);

Outra possibilidade, colocação em Group Box (tipo de painel):

groupBox1.Controls.Add(b);

Page 30: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

30

Componentes criados em tempo de execução (eventos via Delegates) //6) Associar o método ExibirMensagem

ao evento:b.Click += new

EventHandler(ExibirMensagem);

Page 31: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

31

Componentes criados em tempo de execução

private void ExibirMensagem(object sender, EventArgs e)

{ //...}sender: objeto foco do evento;e: informações relacionadas ao evento;

Page 32: Windows Forms 2º Semestre 2010 > PUCPR > TPU Bruno C. de Paula.

32

Exemplo completo!Cuidado com o type casting!