programação visual orientada a eventos
DESCRIPTION
Programação Visual Orientada a Eventos. Conceito. Programação Visual é um modelo de Programação no qual os usuários obtém informações através de imagens e objetos usualmente oriundos de uma tela de vídeo. Programação Visual e Janelas. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/1.jpg)
1
Programação Visual Orientada a Eventos
![Page 2: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/2.jpg)
2
Conceito• Programação Visual é um modelo de
Programação no qual os usuários obtém informações através de imagens e objetos usualmente oriundos de uma tela de vídeo.
![Page 3: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/3.jpg)
3
Programação Visual e Janelas
• Usam-se Interfaces Gráficas (baseadas em janelas ) para interação com o usuário
• As interfaces gráficas contém uma janela principal e um número variável de janelas secundárias
• A janela principal trata da interação primária com o usuário e contém um número arbitrário de objetos
• As janelas secundárias fornecem detalhes sobre os objetos exibidos na janela principal e sobre operações envolvendo esses objetos
![Page 4: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/4.jpg)
4
Programação Visual e Janelas
• O usuário interage com o sistema selecionando um ou mais objetos (clicando sobre eles, por exemplo) e depois escolhendo uma operação (usando um menu, por exemplo) para ser executada sobre os objetos selecionados. São operações usuais Cortar, Copiar, Colar, Excluir e Ver Propriedades.
![Page 5: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/5.jpg)
5
Programação Visual e Janelas
• Janelas principais possuem uma barra de menus tipo cortina ou "drop-down".
• Pode-se escolher operações por meio de menus suspensos ou "pop-up" (acionando o botão direito do mouse sobre o objeto desejado).
• Caso o número de objetos presentes seja grande pode-se empregar barras de rolagem ou simplesmente redimensionar a janela.
• As janelas também podem ser subdivididas em painéis ou quadros, que se pode redimensionar ou rolar.
![Page 6: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/6.jpg)
6
Janelas Secundárias
• Janelas Secundárias dão suporte às janelas principais. Na janela principal só é possível exibir algumas propriedades dos objetos nela contidos. Outras propriedades podem ser vistas em janelas secundárias nas quais podem ser manipuladas por meio de botões Liga/Desliga, Caixas de Seleção, Botões de Seleção, Réguas, Caixas de Texto e Caixas Combinadas.
![Page 7: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/7.jpg)
7
Janelas Secundárias
• Para diferenciar uma janela principal de uma janela secundária é interessante verificar que:
Janelas principais são consideradas mais importantes, recebendo o maior foco de atenção de projetistas e usuários
Janelas secundárias são exibidas navegando a partir das janelas principais e não vice versa.
![Page 8: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/8.jpg)
8
Janelas Secundárias
• Além das janelas de propriedades, outros tipos de janelas secundarias são:
Caixas de Diálogo Caixas de Mensagens Paletas Janelas suspensas ("pop-up")
![Page 9: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/9.jpg)
9
Janelas Secundárias
• Muitas aplicações são baseadas em arquivos. Os usuários podem disparar estas aplicações com operações de Abrir um arquivo ou objeto e a janela principal mostra os objetos armazenados no arquivo aberto ou objeto selecionado. As operações usuais sobre arquivos são Salvar, Salvar Como, Abrir e Novo.
![Page 10: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/10.jpg)
10
Janela Secundária de Propriedades de objetos
Barras de rolagem
![Page 11: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/11.jpg)
11
Janela Secundária de Operações sobre objetos
![Page 12: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/12.jpg)
12
Conceitos
• Formulário – Uma superfície retangular que serve para modelar o fundo de imagem e para receber diversos componentes;
Componente – Um objeto que pode ser anexado a um formulário para acrescentar uma determinada funcionalidade.
![Page 13: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/13.jpg)
13
Os componentes podem ser de diversos tipos
![Page 14: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/14.jpg)
14
Componentes para exibição e entrada de textos
• Rótulos ou textos
• Caixas de texto
![Page 15: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/15.jpg)
15
Componentes que apresentam escolhas para os usuários
Caixas de seleção (CheckBox)Botões de opção (OptionButton)Caixas de Listas (ListBox)Caixas combinadas (ComboBox)
![Page 16: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/16.jpg)
16
• Componentes do tipo botões de comando (CommandButton)
• Barras de Rolagem (ScrollBar)Componentes que exibem figuras e gráficos
• Caixas de figuras (PictureBox)ImagensFormas e linhas (Shape, Line)
![Page 17: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/17.jpg)
17
Painel
Caixa de texto
Caixa de seleção
Botão de opção
Botão de comandoCaixa combinada
Rótulo
![Page 18: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/18.jpg)
18
Janela secundária tipo paleta
![Page 19: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/19.jpg)
19
Componentes adicionais•
MenusControles de Acesso a DadosControles de Sistemas de ArquivosControles DiversosRelógio (Timer)Caixas de diálogo comum (CommonDialog)Repositório de OLE (OLEContainer)Quadros (Frame)Barras de Ferramentas (Toolbar)Caixas de Diálogo
![Page 20: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/20.jpg)
20
Menus
Barra de menus (Drop-Down)
Títulos de Menus
Item de Menus
Menus flutuantes (Pop-Up)
![Page 21: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/21.jpg)
21
Menu tipo cortina
![Page 22: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/22.jpg)
22
Controles de Acesso a Dados
يج Listas de Dados (DataList)
يج Caixas combinadas de dados (DataCombo)
يج ADO Data Control
يج Grelhas de Dados (DataGrid)
يج Grelhas Hierárquicas (HierarchicalFlexGrid)
![Page 23: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/23.jpg)
23
Controles de Sistemas de Arquivos
Caixas de Listas de Unidades (DriveListBox)
Caixas de Listas de Pastas (DirListBox)
Caixas de Listas de Arquivos (FileListBox)
![Page 24: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/24.jpg)
24
Menu Suspenso
Caixa de listas de arquivos
Caixa de listas de unidades
Caixa de listas de pastas
![Page 25: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/25.jpg)
25
Janela de arquivos
![Page 26: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/26.jpg)
26
Controles Diversos
Relógio (Timer)
Caixas de diálogo comum (CommonDialog)
Repositório de OLE (OLEContainer)
Quadros (Frame)
Menus
![Page 27: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/27.jpg)
27
Caixas de Diálogo
Caixas modais e não modais
Caixas Customizadas
Caixas pré definidas
Caixas de Entrada (InputBox)
Caixas de Mensagens (MsgBox)
![Page 28: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/28.jpg)
28
Caixa de mensagens
![Page 29: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/29.jpg)
29
Caixa de diálogo
![Page 30: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/30.jpg)
30
Descrição Sumária dos Componentes
![Page 31: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/31.jpg)
31
Componentes do tipo botões de comando (CommandButton)Barras de Rolagem (ScrollBar)Componentes que exibem figuras e gráficosCaixas de figuras (PictureBox)ImagensFormas e linhas (Shape, Line)
![Page 32: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/32.jpg)
32
Descrição dos Componentes
• Rótulos são áreas contendo textos e/ou imagens que, durante a execução do programa não podem ser alterados diretamente pelo usuário.
• Caixas de texto são áreas contendo textos que, durante a execução do programa podem ser alterados diretamente pelo usuário.
![Page 33: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/33.jpg)
33
Descrição dos Componentes
• Botões de comando são áreas que correspondem a botões de acionamento de máquinas virtuais construídas pelo programa.
• Quadros, painéis ou “frames” são áreas diferenciadas do formulário destinadas a agrupar diversos componentes cujo emprego tenha uma ligação lógica.
![Page 34: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/34.jpg)
34
Descrição dos Componentes
• Caixas de seleção são áreas utilizadas para indicar opções que podem estar selecionadas ou não sendo que essas opções são independentes umas das outras.Botões de opção são áreas utilizadas para indicar opções mutuamente exclusivas fazendo com que quando o usuário selecionar um desses botões torne sem ação todas as demais opções de mesma natureza.
![Page 35: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/35.jpg)
35
Descrição dos Componentes• Imagens servem para exibição de gráficos. Esses
controles aceitando cliques de mouse servem também como botões de comando. Quando se carregar uma figura em um controle imagem o ajustamento entre tamanhos é feito pela propriedade Strecht. Quando esta for verdadeira a figura se ajusta ao tamanho do controle, podendo gerar distorções. Quando a propriedade for false o controle imagem se ajusta ao tamanho da figura.
![Page 36: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/36.jpg)
36
Componente Imagem
![Page 37: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/37.jpg)
37
Descrição dos Componentes
• Os controles Figura exibem gráficos e servem como aglutinadores de outros controles. Os controles figura são mais poderosos que os controles Imagem e consomem mais recursos computacionais.
![Page 38: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/38.jpg)
38
Componente Figura
![Page 39: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/39.jpg)
39
Propriedades
![Page 40: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/40.jpg)
40
Propriedades
• Os formulários e componentes são caracterizados por uma lista de propriedades ou atributos.
• Para cada elemento visual as propriedades mais comuns são descritas a seguir
![Page 41: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/41.jpg)
41
Propriedades
Nome – identificador do componente dentro da programação;
“Caption”- texto identificador do componente e que é exibido para o usuário;
Dimensões – largura e comprimento do componente que, usualmente, é retangular;
![Page 42: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/42.jpg)
42
Propriedades
Posição no formulário – distâncias entre as bordas esquerda e superior do formulário e as bordas correspondentes do componente;
Cor de fundo – cor da superfície do componente;
Cor de frente – cor do texto apresentado no componente;
Bordas – tipo de borda exibido;
![Page 43: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/43.jpg)
43
Propriedades
Variação automática de tamanho – capacidade de acomodação a textos de tamanho variável e ao tamanho da tela;
• As dimensões podem ser expressas em diversas unidades. Usualmente são expressas em twips que correspondem a 1/20 de um ponto de impressão. Como existem 72 pontos por polegada existem 1440 twips por polegada ou 567 twips por centímetro.
![Page 44: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/44.jpg)
44
Caixa de propriedades
![Page 45: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/45.jpg)
45
Métodos
![Page 46: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/46.jpg)
46
Métodos
• Métodos são ações próprias do componente e que são previamente programadas
![Page 47: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/47.jpg)
47
Métodos
Método Botão de comando Rótulo Caixa de Texto Caixa de Listas
Refresh sim sim sim sim
Set Focus sim sim sim sim
Move sim sim sim sim
ADDItem não não não sim
Clear não não não sim
![Page 48: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/48.jpg)
48
Utilização
![Page 49: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/49.jpg)
49
Utilização
• Os componentes são exibidos em barras de componentes ou paletas. Ao se iniciar um projeto automaticamente é exibido um formulário ainda não utilizado (“em branco”).
![Page 50: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/50.jpg)
50
Utilização
• Para inserir um componente no formulário seleciona-se o componente na barra ou paleta (com o mouse) e, a seguir, pressiona-se o botão esquerdo do mouse no ponto do formulário que corresponderá ao vértice superior esquerdo do componente inserido. Mantendo o mesmo botão pressionado leva-se o mouse até o ponto correspondente ao vértice direito inferior do componente e solta-se o botão.
![Page 51: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/51.jpg)
51
Formulário e Barra de ferramentas de componentes
Barra de ferramentas de componentes
Formulário
![Page 52: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/52.jpg)
52
Utilização
• Imediatamente é exibida a lista de atributos ou propriedades do componente que poderá, então, ser preenchida ou alterada. Quando se desejar inserir outro componente basta repetir o procedimento.
![Page 53: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/53.jpg)
53
Utilização
• A qualquer tempo pode-se selecionar um componente do formulário. Nessa ocasião o componente anteriormente selecionado perderá o foco de atenção e a lista de atributos exibida será a do novo componente selecionado. Caso seja acionada a tecla “Delete” estando selecionado um componente o mesmo será excluído do formulário.
![Page 54: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/54.jpg)
54
Utilização
• Chama-se de foco à capacidade de receber entradas do usuário via teclado ou mouse. Apenas um componente de cada vez possui o foco que pode ser transferido por ações de mouse, teclado ou programação.
• Normalmente o ordem de transferência de foco é definida pela propriedade ordem de tabulação pois as teclas de entrada e de tabulação alteram a ordem de transferência de foco.
![Page 55: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/55.jpg)
55
Utilização
• Para alterar tamanho de um componente selecionado basta aproximar o mouse de suas bordas. Nessa ocasião exibem-se setas duplas indicando direção de crescimento/decrescimento do componente. Basta, então arrastar as bordas no sentido desejado que pode ser horizontal, vertical ou inclinado sendo que neste último caso serão mantidas as proporções entre as dimensões do componente antes e depois da alteração de tamanho.
![Page 56: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/56.jpg)
56
Utilização
• Para mudar um componente de posição basta colocar o mouse sobre o componente e mover o mouse na direção desejada.
![Page 57: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/57.jpg)
57
Utilização
• Pode-se selecionar simultaneamente diversos componentes para ajustar propriedades comuns tais como dimensões, cor, tipo de letra, borda ou propriedades de alinhamento.
![Page 58: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/58.jpg)
58
Eventos
![Page 59: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/59.jpg)
59
Eventos são ações que atuam sobre o ambiente do programa. Os eventos mais comuns e evidentes são provenientes da ação do usuário, tais como Ação do mouse (botão sendo abaixado, ou clique) Entrada de dados via teclado Seleção de um item de uma lista Mudança de uma lista ou caixa
![Page 60: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/60.jpg)
60
Eventos
• Na programação orientada a eventos os programas não tem processamento monolítico iniciando-se no disparo do programa e indo até a última linha de código e seu encerramento de uma só vez. Os programas são divididos em pequenos trechos que descrevem as respostas que o sistema deve fornecer a determinados eventos.
![Page 61: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/61.jpg)
61
Eventos
• Após processar a resposta a um determinado evento o sistema permanece em estado de espera da ocorrência de um outro evento, Os programas só terminam em resposta ao evento de encerramento ou em caso de falha.
![Page 62: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/62.jpg)
62
Eventos
• Os eventos usuais, que já tem cabeçalhos prontos para auxiliar o programador, comuns a praticamente todos os componentes são : Click, DragDrop, DeagOver, GotFocus, LostFocus, KeyDown, KeyUp, KeyPress, MouseDown, MouseUp, MouseUp e MouseMove.
![Page 63: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/63.jpg)
63
Eventos
• Alguns componentes possuem previstos eventos de Change, Scroll, DbClick, ItemChecked e outros.
![Page 64: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/64.jpg)
64
Tratamento de Eventos
![Page 65: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/65.jpg)
65
Tratamento de Eventos
• Os eventos, quase sempre, são associados a componentes do formulário. Para escrever o código correspondente a um evento ligado a um componente deve-se passar ao editor de código. Isto é feito dando um duplo clique no componente (na janela do formulário).
![Page 66: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/66.jpg)
66
Tratamento de Eventos
• Isto faz com que se abra a janela do editor de código com um protótipo do procedimento de tratamento do evento já iniciado. Para cada componente existem definidos um grande número de possíveis eventos que o editor de código exibe em um ComboBox
(Caixa de Procedimentos/Eventos).
![Page 67: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/67.jpg)
67
Tratamento de Eventos
• Nesta Caixa é exibido o Procedimento associado ao evento selecionado. Uma outra ComboBox é a Caixa de Objetos que exibe o objeto selecionado e contém a lista de todos os objetos associados ao formulário.
![Page 68: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/68.jpg)
68
Tratamento de Eventos
• O código normalmente é dividido em diversas seções, sendo uma delas a seção geral para as variáveis globais e declarações, uma seção relativa ao formulário e uma seção para cada objeto contido no formulário. Na seção de cada objeto podem existir diversos procedimentos de tratamento de eventos.
![Page 69: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/69.jpg)
69
Editor de códigos
• O editor de códigos apresenta um recurso de completamento de código através do qual sempre que se digitar o nome de um componente ou objeto e se aguardar um instante será apresentada uma lista de possíveis continuações da qualificação do objeto.
![Page 70: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/70.jpg)
70
Editor de código
Editor de código
![Page 71: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/71.jpg)
71
Completamento de código
![Page 72: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/72.jpg)
72
“Arrays” de componentes
• Coleção ou grupo de componentes que compartilham o mesmo nome, o tipo e os procedimentos de tratamento de eventos
• Emprego mais freqüente é em menus e em agrupamento de botões de opção
• Utiliza menor quantidade de recursos do que o uso de múltiplos componentes semelhantes independentes uns dos outros
• Para criar um “array” de componentes basta dar o mesmo nome de um componente existente e confirmar a intenção de criar um “array” de componentes
• Os elementos de um “array” são identificados pelo nome do “array” seguido da numeração seqüencial de sua posição dentro do “array”, entre parênteses. A numeração inicia em zero.
![Page 73: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/73.jpg)
73
Um projeto Visual Basic compreende diversos arquivos
Módulos de formulários (.frm) Módulos de classes (.class) Módulos padrão (.bas) Módulos de recursos (.res) Documentos ActiveX (.dob) Controles do usuário (.ctl) Módulos de propriedade de páginas (.pag) Controles ActiveX (.ocx)
![Page 74: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/74.jpg)
74
Inclusão de Controles ActiveX
• A inclusão de controles ActiveX em um projeto é feita através da Caixa de Diálogos de Componentes. Na lista de componentes exibida na aba Controles deve-se selecionar a caixa de seleção à esquerda do nome do componente e acionar o botão OK. Isto fará com que o componente passe a aparecer na barra de ferramentas. Caso o componente não figure na Caixa de Diálogo deve-se acionar o botão Browse e procurar em outras pastas os discos o arquivo com o componente desejado. Quando este arquivo é selecionado automaticamente o nome do componente vai para a caixa de diálogo com a caixa de seleção selecionada.
![Page 75: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/75.jpg)
75
Dimensões Visuais
• As dimensões visuais são posição, tamanho, forma e cor.
• A usabilidade das interfaces cresce bastante usando dimensões visuais dos objetos e seus atributos.
• Por meio das dimensões visuais pode-se exibirde um número de atributos maior do que aquele mínimo necessário para identificar um objeto.
![Page 76: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/76.jpg)
76
Vantagens de exibição de maior número de atributos
• Evitar que o usuário tenha o trabalho adicional de navegação para visualizar outros atributos do objeto selecionado
• Permitir que o usuário verifique os diversos aspectos dos objetos ao mesmo tempo, o que é bom para comparações e o reconhecimento de padrões.
![Page 77: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/77.jpg)
77
Posição
• Combinando com tamanho pode exibir as posições do mundo real
• Essencial para GIS, CAD, WYSIWYG
• Em algumas situações é importante e em outras não (tamnho de aeroporstos em cartas aeronáuticas)
![Page 78: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/78.jpg)
78
Tamanho
• Para representar um arquivo, por exemplo, o tamanho do objeto exibido pode representar o espaço de armazenamento ocupado pelo arquivo
• Para uma conta bancária o tamanho do objeto exibido pode representar o saldo.
• Uma escala logarítmica é melhor do que uma escala linear, pois escalas lineares tendem a crescer muito, ocupando muito espaço nas janelas.
![Page 79: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/79.jpg)
79
Forma
• O atributo forma usualmente é explorado por meio de ícones. As formas são boas na representação de tipos mas não o são para dados numéricos ou literais.
![Page 80: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/80.jpg)
80
Ícones
![Page 81: Programação Visual Orientada a Eventos](https://reader035.vdocuments.site/reader035/viewer/2022062518/56813f50550346895daa08e9/html5/thumbnails/81.jpg)
81
Cor
• A percepção visual pode ser dividida em três componentes: matiz, saturação e sombra.
• Matiz pode representar tipo para uma pequena enumeração de valores.
• Saturação pode ser má escolha pois alta saturação torna a interface desagradável e baixa diferenças de saturação são difíceis de perceber visualmente.
• Para que a sombra não seja confusa deve-se evitar o branco e o preto totais, ficando entre o sombreamento alto e baixo.