App Builder Manual

download App Builder Manual

of 63

Transcript of App Builder Manual

Aprendendo a programar No AppBuilderMdulo I (Bsico)

ContedoContedo............................................................................................2

2Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Capitulo 1: A PROGRESS SOFTWARE

3Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

APRESENTAO

D

esde 1981 Progress Software Corporation gera produtos de software e servios que fortalecem os seus parceiros e clientes para melhorar drasticamente a sua elaborao, implantao, integrao e aplicaes de gesto de qualidade em todo o mundo. Para maiores informaes, segue o site da Progress e o link para a Progress Brasil. WWW.progress.com WWW.progress.com/br

4Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

PROPOSTA

E

ste documento est descrito sobre a utilizao do AppBuilder. Ferramenta disponibilizada pela Progress para criao de programas totalmente Windows. Nesse manual est descrito os principais comandos utilizados em interface Windows, bem como conceitos de utilizao de eventos.

5Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

CONVENES DA APOSTILA

N

o decorrer da apostila, voc vai se identificar com algumas convenes que a PROGRESS utiliza para identificar as SINTAX de seus comandos, funes, atributos, parmetros, etc. Conforme exemplo abaixo: Exemplo: TRIGGERS: { ON event-list [ ANYWHERE ] { trigger-block | PERSISTENT RUN procedure [ IN handle ] [ ( input-parameters ) ] } } ... END [ TRIGGERS ] Segue explicao destas convenes para o melhor entendimento desta apostila, bem como o entendimento das leituras de manuais produzidos pela PROGRESS, para facilitar o entendimento utilizaremos as mesmas caractersticas do material original, que encontra-se disponvel no site da PROGRESS escritos na lngua inglesa. Quando no existir smbolo nenhum, ento o comando, parmetro obrigatrio. [] Colchetes, significa que o que estiver dentro, opcional.

| Pipe, significa que voc utiliza o comando anterior ao smbolo pipe OU utiliza o comando que est depois do smbolo pipe.

6Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Capitulo 2: CONCEITOS E TERMINOLOGIAS

7Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

SOBRE A FERRAMENTA

O

AppBuilder um utilitrio desenvolvido em Progress 4GL para edio rpida e grfica de programas baseados no Windows. Ele foi introduzido a partir da verso 7 para Windows trazendo consigo diversas inovaes e conceitos quanto utilizao de comandos voltados a eventos. Conceitos utilizados A ferramenta trs consigo alguns conceitos como: Drag-and-drop Permite pegar, arrastar e soltar objetos no layout de interface construda; Initialization Permite inicializar objetos com parmetros prdefinidos; Templates Criao de templates de interfaces pr-definidas; Single or Multiple Window Permite criar interfaces modais ou no modais; Activex Utilizao de controles activex conhecidos;

8Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

OBJETOS BSICOS UTILIZADOS

OsSo eles:

Objetos bsicos utilizados na ferramenta, permitem criao de diversos tipos de layouts, sempre utilizando os conceitos de orientao a eventos.

GrupoOrganizer

ObjetoWindow

DescrioContainer na qual so criados os layouts das interfaces. Geralmente containers no modais. Container modal, na qual so criados os layouts das interfaces. rea que delimita um grupo de objetos, na qual pode ser definida seqncia de entrada nos objetos (tab-control). Como o nome j diz um retngulo para embelezamento da interface. Grupo de comandos para resgatar dados de um ou mais banco de dados Objeto utilizado para criar uma grid de dados nas interfaces

Dialog-box Frame

Retangle Data Access Query

Data Display Data and Capture Browser

Combo box Lista de dados com apresentao de um nico dado e boto para abrir a lista de dados Editor Fill-in (Edit Box) Radiobutton set SelectionEditor de textos para descritivos de tamanho grande. Editor campo a campo. Utilizado para criar campos unitrios nas interfaces. Grupo de dados que representa uma nica seleo de valores, tendo diversas opes de escolha. Lista de dados semelhante ao combo9Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

List Slider control Toggle box Action Control Other Button Text Object Image Object PStimer

box, porem j com os dados de forma aberta. Marcador de valores inical e final. Mesma coisa que barra de volume. Objeto utilizado para opo lgica tipo marcado no marcado. Objeto utilizado para criar aes de eventos nas interfaces. Boto. Para inserir label nas interfaces Para inserir imagens nas interfaces OCX que permite colocar um timer nas interfaces.

10Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Capitulo 3: APPBUILDER E SUA INTERFACE

11Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

UTILIZANDO O APPBUILDEROAppBuilder composto pelas seguintes partes:

Main Windows Janela Principal; Object tool palette Barra de objeto; Source code select editor Editor do cdigo 4gl; Dialog Box Vrias janelas de edio.

Esse captulo descreve cada parte do AppBuilder. AppBuilder Main Window Ao acessar o AppBuilder a janela da figura 1 apresentada: Menu Bar Tool Bar Objeto Corrente Status Bar Objeto Corrente Essa parte da janela do AppBuilder apresenta o objeto selecionado. Muito utilizada para verificar qual objeto se est trabalhando no momento. Nele possvel trocar a propriedade nome do objeto e titulo ou descrio. Status Bar

12Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Linha que representa o estado do AppBuilder. Nela possvel ver se algum programa est sendo executado. Menu Bar Como o nome j diz o menu de acesso as diversas funcionalidades do AppBuilder.

FileNew Open Close Close Windows Save Save As Save All Print Cria um novo programa Abre programas j existentes Fecha o arquivo corrente. Fecha todas as janelas abertas. Salva o programa corrente. Salva possibilitando nome do arquivo trocar o

Salva todos os arquivos abertos Imprime o arquivo aberto.

(Lista dos ltimos programas abertos) Exit Sai do AppBuilder

EditUndo Cut Copy Desfaz a operao recente. Move o que foi selecionado para o clipboard. Copia o que foi selecionado para o clipboard.

13Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Paste Duplicate Delete Copy to File Insert from File Tab Order Goto Page

Copia do clipboard para o local do cursor. Duplica a seleo. Remove o que est selecionado. Exporta para um arquivo. Importa de um arquivo. Seta a ordem dos objetos no frame corrente. Seleciona uma pagina.

CompileRun Check Syntax Debug Code Preview Close Character Run Window Compila e roda a aplicao. Verifica se sintaxe dos comandos esto corretas. Inicia o modo de debbuger Mostra todo o programa gerado. Fecha a caractere. janela cdigo do do

modo

ToolsNew Procedure Window New ADM Class Abre uma editor nova instancia do

Abre uma nova classe utilizando o Adm2

14Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Property Sheet Procedure Settings Color Database Connections

Acessa as propriedades do objeto selecionado. Abra o dialog-box propriedades da procedure. Seta a cor. Conecta e desconecta o banco de dados. das

(Lista dos programas instalados em seu sistema)

OptionsPreferences Editing Options Abre as AppBuilder preferncias gerais do do

Edita opes AppBuilder

Snap to Grid Liga desliga a ligao do objeto com a grid Display Grid Liga e desliga a visibilidade da grid

Organiza os objetos dentro da janela que esta sendo construda.

WindowCode Section Editor Hide Object Palette Properties Window Abre o editor do AppBuilder Determina qual objeto visvel ou no Abre as propriedades da janela 15Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

que esta sendo construda. OCX Property Editor (Lista os objetos abertos) Abre as propriedades da OCX.

HelpHelp Topics Messages Recent Messages Cue Cards About AppBuilderNovo Abrir Imprimir

Abre o help do AppBuilder. Mostra a mensagem atravs de seu cdigo correspondente. Mostra as mensagens recentes apresentadas.

Verso do AppBuilder.Executa r Prop.Objet os Cores

ToolBar A toolbar um acesso rpido as ferramentas mais utilizadas no AppBuilderSalvar Propriedades Editar Cdigo Lista objetos Modo seleo

16Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Object Tool Palette A paleta de objeto possui os objetos que podem ser utilizados no contexto de criao das janelas. Esses objetos possuem propriedades na qual sero apresentadas em sesso especifica desse manual.

A paleta contem os objetos, na qual podem ser arrastados a janela que est sendo construda. importante ressaltar que so objetos soltos, isto , no existe interligao entre eles. Essa interligao deve ser feita codificando-se a aplicao

17Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Capitulo 4: TRABALHANDO COM JANELAS (Container)

18Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

INICIANDO UMA JANELA WINDOW

A

Janela window o container dos objetos que sero utilizados na aplicao. Ela possui, na sua inicializao, um frame que servir de deposito dos objetos.

Essa janela pode ser de dois tipos, a saber: Modal, a janela que tranca a aplicao, isto , enquanto no sairmos dela nada pode ser feito fora dela. No modal, a janela que deixa a aplicao livre, isto , enquanto ela est aberta podem-se executar outros comandos na aplicao. Exemplo de janela Modal Observe que geralmente as janelas modais no possuem os botes de minimizar e maximizar

19Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Exemplo de janela No modal

Observe que nessa janela os botes de maximizar e minimizar so colocados por padro.

Para criarmos uma janela e ou programa novo, no AppBuilder basta selecionar o cone itens: (novo) da toolbar e seleciona um dos seguintes

Window Janela no modal

Dialog modal

Janela

20Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Capitulo 5: OBJETOS DE ACESSO A BASE DE DADOS

21Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

OBJETOS BSICOS DE ACESSO

O

s objetos bsicos de acesso a base de dados permitem interligar os campos de uma determinada tabela a nossa interface. Essa ligao permite fazer a edio direta dos campos ou consultas a base de dados. Data Browse O Data Browse permite montar uma grid de dados baseado em uma ou mais tabelas do banco de dados. Geralmente utilizado para consultas. Nesse objeto pode se definir os campos a serem mostrados, bem como definir colunas extras de totais por exemplo. Para manusear esse objeto utilizado a paleta de objetos (objetc Tool Palette). Atravs do cone cria-se uma instancia do data browse em uma determinada janela (container). Ao selecionar dimensionar o Browser na janela as propriedades do Browser so abertas:

Seleciona-se a tabela do banco que se quer trabalhar e em seguida os campos que devem aparecer no Browser

possvel montar joins na clausula where. Dessa forma todos os campos das tabelas selecionadas estaro disponveis para colocar no Browser. importante ressaltar que a modelagem dos dados e a

22Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

normalizao do banco de dados devem estar muito bem feitas para evitar problemas de performance.

23Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Aps selecionar a tabela a tela dos campos apresentada:

Os campos so selecionados e nessa mesma tela possvel alterar algumas propriedades dos campos como column label, formato, fonte e tamanho.

Uma opo de campos calculados tambm disponibilizada.

Uma vez selecionados os campos o Browser apresentado.

24Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Dicas importantes: Para navegar nas linhas do Browse, criando-se, por exemplo, botes de e fazendo que os mesmos faam a navegao do Browse, posicionando a linha do mesmo nos registros selecionados, os comandos a seguir deve ser utilizados: Para o boto .

Find first nome_tabela no-lock no-error If available nome_tabela Then do: Reposition nome_browse to rowid rowid(nome_tabela). Nome_browse:refresh(). end.

Para acessar a coluna que se clicou, para fazer um tipo de ordenao, o comando abaixo deve ser utilizado:If Nome_browse:column:label = NomeColuna.

DB Fields o controle que disponibiliza campos de determinada tabela na janela (container). Para acessar esse objeto, basta na paleta de objetos clicar no cone e arrast-lo para a janela (container). Primeiramente a tabela deve ser selecionada e aps a janela abaixo apresntada

Selecione os campos que voc deseja na janela que est sendo programada.

25Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Browser FreeForm O Browser freeform o objeto que permite que voc faa todo o acesso base de dados de forma livre, isto , voc que faz toda a programao direta no editor, acessando as trigger do Browser. Para que isso seja possvel, ao selecionar o objeto Browser, click no boto . Dessa forma um Browser em branco ser apresentado conforme figura abaixo.

Para escrever o cdigo do browser Browser sem o utiliza-se campos, selection editor, acessando totalmente configurado as trigger pelo programador correspondentes conforme figura abaixo.

Para cada uma das trigger apresentadas possvel escrever o cdigo progress 4gl. Para a trigger de display -> os campos que aparecero no Browser

26Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Para a trigger de open_query -> o for ech da tabela em questo. Para a trigger value-changed -> quando o browser for movimentado.

27Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Capitulo 6: OBJETOS DE APRESENTAO (DISPLAY)

28Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

OBJETOS BSICOS APRESENTAO

O

s objetos bsicos de apresentao so os componentes utilizados para a montagem das telas. A facilidade e flexibilidade de utilizao nos permitem criar telas extremamente ricas e de bastante usabilidade. Combo-box uma lista de itens em uma nica linha com seleo. Para acessar o combo-box o cone (container), na qual apresentada. a deve ser arrastado para o Windows janela de propriedades abaixo ser

Importante ressaltar as seguintes propriedades: List-Items - > lista de itens que sero apresentados na tela para seleo, contudo esse item ser o contedo da varivel quando utilizada. List-Item-Pairs -> lista de itens que sero apresentados na tela para seleo, contudo a formatao desse combo permite 29Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

mostrar itens na tela, numer-los, fazendo com que o retorno da varivel seja o numero correspondente ao item da lista.

30Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

A figura abaixo demonstra um exemplo das propriedades com o ListItem-Pairs:

Os itens mostrados na combo so os antes da vrgula. O numero que aparece aps a vrgula o contedo da varivel.

Fill-ins os campos da tela para entrada de dados. Para acessar o Fill-in o cone deve ser arrastado para o Windows (container), na qual a janela de propriedades abaixo ser apresentada.

Propriedades mais importantes do fill-in so: Enable Habilita ou no o campo Native Monta caixa 3D no campo.

31Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Editor um campo em forma de texto utilizado para digitar comentrios, observaes, entre outros. Para acessar o Editor o cone deve ser arrastado para o Windows (container), na qual a janela de propriedades abaixo ser apresentada.

A propriedade mais importante do editor Maximum caracters, na qual o numero de caracteres que podem ser digitados no campo. Outra propriedade interessante o ReturnInserted, na qual permite grava o enter a cada pulo de linha.

Radio-Buttons uma varivel do tipo seleo nica representada por crculos que possuem seleo. Para acessar o Editor o cone deve ser arrastado para o Windows (container), na qual a janela de propriedades abaixo ser apresentada.

A propriedade mais importantes do radio-buttons so a horizontal, na qual permite colocar os descritivos um do lado do outro e no na vertical.

32Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Seu funcionamento semelhante ao combo-box com a opo ListItems-pairs, na qual retorna o numero digitado aps a vrgula na lista de itens. Toggle-box uma varivel do tipo lgica (checked unchecked). Para acessar o toggle-box o cone deve ser arrastado para o Windows (container), na qual a janela de propriedades abaixo ser apresentada.

Observaes importantes para os objetos acima descritos: Para todo tipo de varivel de tela utilizada no AppBuilder, deve ser utilizado o comando assign para obter o contedo armazenado na mesma, isto , transferir do buffer de tela para o buffer de memria. o Como exemplo num combo-box na trigger de valuechanged, antes de utilizar a varivel necessrio o assign. assign combobox-1. If combobox-1 = 1 Then ... Else ... Para ter acesso ao contedo da varivel de tela sem o assign, o mtodo screen-value da varivel deve ser acessado. Message Combobox-1:Screen-value view-as alertbox. Para combo-box os mtodos abaixo podem ser utilizados para acrescentar ou tirar itens da lista. Combobox-1:List-items = limpa a lista Combobox-1:insert(Valor,2,1) insere texto valor, com retorno 2 na posio 1 da lista.

33Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

O retorno 2 sempre seve ser entre aspas, mesmo se o combo-box for do tipo inteiro. Combobox-1:add-last(Valor,3) Note que nesse caso o parmetro de retorno 3 no deve ser entre aspas. Para os toogle-box o mtodo checked est disponvel para verificar se a varivel esta selecionada ou no: If Toglebox:checked then ... Assign toglebox:cheked = true. Vrios outros mtodos esto disponveis para todos os objetos disponveis no AppBuilder. Maiores informaes documentao Progress (help). Static Image um objeto que serve para acrescentar imagens nas telas. Para acessar a static image o cone deve ser arrastado para o Windows (container), na qual a janela de propriedades abaixo ser apresentada.

34Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Static Text um objeto que serve para acrescentar textos livres nas telas. Para acessar a static image o cone deve ser arrastado para o Windows (container), na qual a janela de propriedades abaixo ser apresentada.

Dicas sobre interfaces: 1 Faa uma interface clean, mas no deixe de utilizar os recursos como Retangulos para formar conjunto de campos do mesmo contexto; 2 Faa com que seu usurio final tenha as informaes necessrias na tela e que a mesma seja bastante intuitiva; 3 Lembre-se sempre de utilizar tooltips para demonstrar o que so os campos; 4 Lembre-se que voc est no mundo de eventos agora, portanto quanto mais livre forem as telas, mais controles teremos que ter, pois o usurio pode clicar em qualquer ponto. 5 Use o mtodo load-mouse-pointer para carregar ponteiros de mouse nos campos desejados. Fillin-1:load-mouse-pointer(campinho\mouse.cur). Importante: Os arquivos de ponteiros tem que ser .cur. 6 Prefira menus TreeViews do que menus drop-down; 7 Utiliza sempre o recurso de criar internal procedures ou function na 4gl, contudo nunca faa uma procedure ou function com um numero elevado de linha de cdigo, pense pequeno para chegar ao grande, faa em partes, dessa forma a reutilizao de cdigo fica mais fcil.

35Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Capitulo 7: OBJETOS DE CONTROLE

36Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

CONTROLES PRINCIPAIS

O

Appbuilder possui vrios controles. Estaremos vendo aqui os principais que so os menus e botes.

Botes de Controle Os botes, sem sombra de dvida, so os principais controles em uma tela. Por isso importante pensar na sua melhor utilizao. E imprescindvel que um prottipo de tela seja idealizado ates da construo, dessa forma conceitos de usabilidade e movimentao do mouse so estudados antes de inserir qualquer controle na tela. um objeto que serve para criar controle de ao na tela. Para acessar os controles de boto cone deve ser arrastado para o Windows (container), na qual a janela de propriedades abaixo ser apresentada.

Diversas propriedades so apresentadas, sendo as mais importantes: Images: UP quando o boto estiver solto Images: Down quando o boto estiver pressionado Images: Insensitive quando o boto estiver desabilitado. Default Button: Indica se o boto o default dessa tela. 37Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

importante ressaltar que o AppBuilder no possui um conjunto de palette de botes pronto como objeto, (a no ser no smartwindows), dessa forma para termos botes de controle do tipo paginar, incluir alterar, etc... preciso construir esse controle e faz-lo funcionar no contexto da janela. Para isso a trigger de choose deve ser utilizada para colocarmos os controles de navegao (progress 4 gl puro). Menus de acesso Os menus de acesso so uma propriedade das janelas, portanto num sistema comum a tela principal ter o menu de acesso. possvel em telas secundarias criar menus, mas lembre-se de manter o contexto sobre o que se est criando. uma propriedade da janela que cria o menu. Para acessar os controles de menu as propriedades da janela devem ser acessadas e a janela abaixo ser apresentada.

Boto acesso criao menu janela

de a do da

Acessando o boto de menu da janela as propriedades do menu sero apresentadas. Nela podemos ento criar nosso menu com itens e subitens, para posterior acesso as funes do sistema que estamos construindo.

38Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

A janela abaixo representa essas propriedades:

As propriedades dessa janela permitem criar menus com nveis e subnveis. Para tal no campo Label se insere o nome da opo de menu desejada. Os botes movimentam os itens para cima ou para baixo e criam nveis ou subniveis respectivamente. Os Botes acrescentam as teclas de acesso

rpido ou limpam o acesso respectivamente. Os botes criam um alinha divisria ou um espao entre os menus respectivamente. O controle coloca um toggle no item de menu e quando o mesmo selecionado a toggle fica ativada. E para finalizar possvel criar popups menus em qualquer objeto que em suas propriedades apresentarem o cone , sendo seu funcionamento idntico ao funcionamento do menu clssico.

39Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Capitulo 8: EVENTOS DOS OBJETOS

40Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

EVENTOS

O

Progress 4GL uma linguagem orientada a objetos e eventos. Apesar de uma orientao a objetos no completa como em Delphi, C++ e/ou Java, mas a princpio baseada, como exemplo, tambm, Visual Basic.

Lista de Eventos ANY-KEYEvento genrico ou de abrangncia total, atingido por qualquer tecla, combinao de teclas ou evento do mouse.Aplica-se para: BROWSE RADIO-SET BUTTON SELECTION-LIST COMBO-BOX SLIDER EDITOR TOGGLE-BOX FILL-INExemplo:

define variable nome as character. on "any-key":u anywhere do: hide message. message string(time, "hh:mm:ss"). end. update nome.

ANY-PRINTABLEOcorre quando solicitada uma impresso de um objeto e no h nenhum trigger definido para o evento especfico do objeto.Aplica-se para: BROWSE RADIO-SET BUTTON SELECTION-LIST COMBO-BOX SLIDER EDITOR TOGGLE-BOX FILL-IN

41Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

BACKS PACEQuando pressionada um tecla de backspace no objeto.Aplica-se para: FILL-IN

BACK-TABOcorre quando solicitado um retrocesso e/ou passagem para o objeto anterior, em Windows como padro Shift + Tab.Aplica-se para: BROWSE RADIO-SET BUTTON SELECTION-LIST COMBO-BOX SLIDER EDITOR TOGGLE-BOX FILL-IN

BELLOcorre quando pressionada uma tecla mapeada para a funo BELL no objeto.Aplica-se para: BROWSE IMAGE BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP TEXT FILL-IN TOGGLE-BOX FRAME WINDOW

CHOOS EAplica-se a botes e menus quando escolhido.Aplica-se para: BUTTON MENU-ITEM (no toggle-box)Exemplo:

define button b-ok label '&OK' auto-go. form b-ok with frame f-escolha. on "choose":u of b-ok in frame f-escolha do: message 'Botao Ok pressionado' view-as alert-box. end. update b-ok with frame f-escolha.

42Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

CLEARAplica-se a uma caixa de texo, FILL-IN, quando pressionada uma tecla, ou combinao de teclas para apagar o contedo, em Windows o padro Control Z.Aplica-se para: FILL-IN

DEFAULT-ACTIONAplica-se a browses e listas de seleo quando ocorre duplo clique ou ENTER no objeto.Aplica-se para: BROWSE SELECTION-LIST

DELETE-CHARACTEROcorre quando pressionado Delete no objeto.Aplica-se para: FILL-IN

DES ELECTIONQuando valores so desmarcados em um browse ou lista de seleo mltipla.Aplica-se para: BROWSE RADIO-SET BUTTON RECTANGLE COMBO-BOX SELECTION-LIST EDITOR SLIDER FILL-IN TEXT FRAME TOGGLE-BOX IMAGE

EMPTY-S ELECTIONQuando um objeto de contedo vazio clicadoAplica-se para: FRAME DIALOG-BOX

END-BOX-S ELECTIONOcorre quando o boto do mouse liberado aps a seleo de uma rea.Aplica-se para: FRAME DIALOG-BOX

43Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

END-ERRORAplica-se a objetos ou bloco de interao quando ocorrido algum tipo de erro ou solicitada a finalizao, geralmente ESC ou F4. Quando isto acontece a um bloco de interao, os valores das variveis sem a declarao NO-UNDO e/ou valores atribudos em banco de dados so desfeitos, caso estes valores ainda no estejam confirmados na tabela.

END-ERROR EVENTOcorre quando o usurio pressiona uma tecla que equivale funo END-ERROR.Aplica-se para: BROWSE IMAGE BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP TEXT FILL-IN TOGGLE-BOX FRAME WINDOW

END-MOVEOcorre ao finalizar uma ao de arrastar e soltar um objeto.Aplica-se para: BROWSE RADIO-SET BUTTON RECTANGLE COMBO-BOX SELECTION-LIST EDITOR SLIDER FILL-IN TEXT FRAME TOGGLE-BOX IMAGE

END-RES IZEOcorre ao finalizar um redimensionamento da janela.Aplica-se para: BROWSE RADIO-SET BUTTON RECTANGLE COMBO-BOX SELECTION-LIST EDITOR SLIDER FILL-IN TEXT FRAME TOGGLE-BOX IMAGE

44Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

ENDKEYQuando pressionada uma tecla de finalizao de tarefa, por padro F4 e/ou ESC.Aplica-se para: BROWSE IMAGE BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP TEXT FILL-IN TOGGLE-BOX FRAME WINDOW

ENTRYQuando o objeto recebe foco.Aplica-se para: BROWSE FRAME BUTTON RADIO-SET COMBO-BOX SELECTION-LIST DIALOG-BOX SLIDER EDITOR TOGGLE-BOX FILL-IN WINDOW

ERROREvocado quando qualquer erro no especificado causado, tanto para objeto, como para blocos em transao.Aplica-se para: BROWSE IMAGE BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP TEXT FILL-IN TOGGLE-BOX FRAME WINDOWExemplo:

for each _user on error undo, retry transaction: update _user. end.

45Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

GOEste evento uma confirmao simultnea de um ou vrios objetos em estado de insero, funcionando como ENTER contnuo. O exemplo abaixo demonstra uma combinao de vrios eventos reunidos para um mesmo propsito.Aplica-se para: BROWSE IMAGE BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP TEXT FILL-IN TOGGLE-BOX FRAME WINDOWExemplo:

form customer.cust-num customer.name with frame f-customer side-labels row 3 centered title "Alteracao". on "return":u, "go":u, "tab":u, "entry":u, "leave":u of customer.cust-num do: find customer where customer.cust-num = input frame f-customer customer.cust-num no-lock no-error. if available customer then display customer.name with frame f-customer. else clear frame f-customer no-pause. end. repeat on error undo, retry transaction: prompt-for customer.cust-num with frame f-customer. update customer.name with frame f-customer. end.

HELPQuando solicitada a tecla configurada para Help, como padro a tecla em Windows F1, mas caso o Progress esteja configurado para V6 a tecla padro ser F2, tanto em Windows como em UNIX, DOS, Novell, etc.Aplica-se para: BROWSE IMAGE BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP TEXT FILL-IN TOGGLE-BOX FRAME WINDOW

46Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

ITERATION-CHANGEDOcorre quando qualquer interao/ao com o mouse feita em um browse.Aplica-se para: BROWSE

LEAVEOcorre quando o objeto perde o foco.Aplica-se para: BROWSE FRAME BUTTON RADIO-SET COMBO-BOX SELECTION-LIST DIALOG-BOX SLIDER EDITOR TOGGLE-BOX FILL-IN WINDOW

LEFT-MOUS E-CLICKQuando o boto esquerdo do mouse pressionado sobre o objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

LEFT-MOUS E-DBLCLICKQuando o boto esquerdo do mouse pressionado duplamente sobre o objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW

47Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

MENU

LEFT-MOUS E-DOWNQuando o boto esquerdo do mouse mantido pressionado sobre o objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

LEFT-MOUS E-UPQuando o boto esquerdo do mouse liberado do objeto outrora escolhido.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MENU-DROP iniciado quando com o mouse e feita uma ao de drag and drop, arrastar e soltar.Aplica-se para: MENU SUB-MENU

MIDDLE-MOUS E-CLICKQuando pressionado o boto do meio do mouse, caso este esteja habilitado pelo Windows.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET

48Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MIDDLE-MOUS E-DBLCLICKQuando ocorre duplo-clique com o boto do meio do mouse sobre o objeto escolhido.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MIDDLE-MOUS E-DOWNQuando pressionado o boto do meio do mouse sobre o objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MIDDLE-MOUS E-UPQuando liberado o boto do meio do mouse sobre o objeto outrora escolhido.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE

49Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-EXTEND-CLICKQuando clicado e liberado o boto do mouse sobre o objeto. O mesmo que MOUSE-MOVE-CLICK.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-EXTEND-DBLCLICKQuando clicado duplamente o boto do mouse sobre o objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-EXTEND-DOWNQuando mantido pressionado o boto do mouse sobre o objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER

50Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-EXTEND-UPQuando liberado o boto do mouse sobre o objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-MENU-CLICKQuando escolhido um item de menu.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-MENU-DBLCLICKQuando escolhido com duplo clique um item de menu.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX

51Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

IMAGE WINDOW MENU

MOUSE-MENU-DOWNQuando mantido pressionado o boto do mouse sobre o item de menu.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-MENU-UPQuando liberado o boto do mouse sobre um item de menu.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-MOVE-CLICKQuando escolhido um objeto com um clique do mouse. O mesmo que MOUSE-EXTENT-CLICK.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW

52Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

MENU

MOUSE-MOVE-DBLCLICKQuando clicado duplamente sobre um objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-MOVE-DOWNQuando mantido pressionado o boto do mouse sobre o objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-MOVE-UPQuando liberado o boto do mouse sobre o objeto outrora escolhido.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-S ELECT-CLICKOcorre quando se clica e libera o boto do mouse. 53Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-S ELECT-DBLCLICKOcorre quando se clica duplamente o mouse sobre um objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-S ELECT-DOWNOcorre quando se seleciona um objeto com o boto do mouse pressionado.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

MOUSE-S ELECT-UPOcorre quando se seleciona um objeto com o boto do mouse e este liberado.

54Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

NEXT-FRAMEQuando pressionado uma tecla ocorrendo a passagem para outro frame.Aplica-se para: BROWSE FILL-IN BROWSE CELL RADIO-SET BUTTON SELECTION-LIST COMBO-BOX SLIDER EDITOR TOGGLE-BOX

OFF-ENDQuando solicitado o ltimo elemento de uma lista em um combo-box, exemplo: utilizando as teclas Control PageDown.Aplica-se para: BROWSE

OFF-HOMEQuando solicitado o primeiro elemento de uma lista em um combobox, exemplo: utilizando as teclas Control PageUp.Aplica-se para: BROWSE

55Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

PREV-FRAMEQuando solicitado uma tecla para voltar ao frame anterior.Aplica-se para: BROWSE FILL-IN BROWSE CELL RADIO-SET BUTTON SELECTION-LIST COMBO-BOX SLIDER EDITOR TOGGLE-BOX

RECALLRestaura o valor inicial contido em uma caixa de edio.Aplica-se para: BROWSE FILL-IN BROWSE CELL RADIO-SET BUTTON SELECTION-LIST COMBO-BOX SLIDER EDITOR TOGGLE-BOX

RETURNQuando pressionado ENTER em um objeto.Aplica-se para: FILL-IN BROWSE CELL

RIGHT-MOUS E-CLICKQuando clicado sobre o objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

RIGHT-MOUS E-DBLCLICKQuando pressionado duplo clique sobre o objeto.Aplica-se para: BROWSE MENU-ITEM

56Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

RIGHT-MOUS E-DOWNQuando pressionado o boto direito do mouse sobre o objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

RIGHT-MOUS E-UPQuando liberado o boto direito do mouse sobre o objeto.Aplica-se para: BROWSE MENU-ITEM BUTTON RADIO-SET COMBO-BOX RECTANGLE DIALOG-BOX SELECTION-LIST EDITOR SLIDER FIELD-GROUP SUB-MENU FILL-IN TEXT FRAME TOGGLE-BOX IMAGE WINDOW MENU

SELECTIONQuando selecionado algum texto ou item em um objeto.Aplica-se para: BROWSE RADIO-SET BUTTON RECTANGLE COMBO-BOX SELECTION-LIST EDITOR SLIDER

57Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

FILL-IN TEXT FRAME TOGGLE-BOX IMAGE

START-BOX-SELECTIONQuando iniciado evento de marcao de rea na janela.Aplica-se para: FRAME ou DIALOG BOX com a propriedade BOXSELECTABLE igual a TRUE.

START-MOVEQuando iniciado o evento move da janela.Aplica-se para: BROWSE RADIO-SET BUTTON RECTANGLE COMBO-BOX SELECTION-LIST EDITOR SLIDER FILL-IN TEXT FRAME TOGGLE-BOX IMAGE

S TART-RES IZEQuando iniciado o evento de redimensionamento da janela.Aplica-se para: BROWSE RADIO-SET BUTTON RECTANGLE COMBO-BOX SELECTION-LIST EDITOR SLIDER FILL-IN TEXT FRAME TOGGLE-BOX IMAGE

TABQuando pressionado a tecla de TAB no objeto.Aplica-se para: BROWSE FILL-IN BROWSE CELL RADIO-SET BUTTON SELECTION-LIST COMBO-BOX SLIDER CONTROL-FRAME TOGGLE-BOX EDITOR

58Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

VALUE-CHANGEDQuando modificado o valor para browses, combo-box, fill-in, radioset, selection-list, slider, toggle-box e menuitem.Aplica-se para: BROWSE SLIDER COMBO-BOX TOGGLE-BOX RADIO-SET MENU-ITEM (toggle-box) SELECTION-LIST

WINDOW-CLOSEEvocado quando fechada a janela via mouse ou tecla de finalizao.Aplica-se para: DIALOG-BOX WINDOW

WINDOW-MAXIMIZEDQuando a janela maximizada.Aplica-se para: WINDOW

WINDOW-MINIMIZEDQuando a janela minimizada.Aplica-se para: WINDOW

WINDOW-RES IZEDQuando a janela redimensionada.Aplica-se para: WINDOW

WINDOW-RES TOREDQuando restaurado o tamanho inicial da janela.Aplica-se para: WINDOW

59Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Capitulo 9: OBJETOS ACTIVEX (OCX)

60Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

ACESSANDO CONTROLES OCX

C

ontroles OCX pode ser acessados via programao 4GL. Dessa forma uma gama considervel de componentes fica disponvel para abrilhantar ainda mais sua aplicao.

Objeto OCX da Paleta. Para acessar os objetos OCX basta utilizar a paleta de objetos e acessar o cone , na qual uma lista de objetos fica disponvel para acesso. Essa lista de objetos na verdade os objetos instalados no seu Windows. importante ressaltar que dependendo do controle ocx utilizado necessrio instal-lo na maquina em que a aplicao ser utilizada. Tela de controles OCX Conforme figura 1, os controles OCX so apresentados. Para escolher um deles basta dar um click e ok.

Figura 1 O componente mais comum utilizado a TreeView que serve principalmente para montar menus de acesso aos sistemas. A tela de propriedades do controle OCX acessado pelo duplo click no controle selecionado.

61Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

Para o caso do controle TreeView a tela de propriedades abaixo apresentada.

Diversas propriedades podem ser acessadas e parametrizadas como default para inicializao do controle. Contudo possvel acessar cada propriedade atravs de linha de comando da seguinte forma: assign NomeOcx:Comando = atributo. Sua sintaxe se d atravs do acesso aos mtodos da ocx. Quando utilizarmos uma ocx treeview em conjunto necessrio utilizar uma ocx de ImageList, na qual parametriza as imagens que sero mostradas nessa treeview. Aps adicionar a treeview na janela e a ImageList na mesma. O cdigo abaixo de exemplo deve ser adicionado ao programa. procedure assign assign assign inicializa_menu: chTreeView chImageList chTreeView:ImageList = chchArvore:TreeView. = chim:ImageList. = chImageList.

Para adicionar nodos na TreeView o comando abaixo deve ser utilizado: chTreeView:Nodes:Add(par1,par2,par3,par4,par5,par6). Os parmetros (par) representam a hierarquia da TreeView, na qual os nodos devem ser inseridos. Para entender melhor a forma de utilizao dos parmetros o cdigo abaixo representa os comandos ds da raiz (root) at a sub-rotina final.

62Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708

chTreeView:Nodes:Add( , "p" , root , Cadastros,1,2). chTreeView:Nodes:Add(root,4, RotinaFinanceiro, Financeiro,1,2). chTreeView:Nodes:Add(RotinaFinanceiro,4,SbBancos, Agencia,1,2). chTreeView:Nodes:Add(RotinaFinanceiro,4,SbBancos, Banco,1,2). chTreeView:Nodes:Add(RotinaFinanceiro,4,SbBancos, Cheques,1,2).

Para acesso aos nodos utilizaremos as triggers do controle ocx da TreeView da acessando a caixa de dialogo:

Observe as triggers da OCX.

Acrescentando as triggers poderemos incluir nos cdigo progress 4gl para acesso a outras rotinas do sistema. Para finalizar o item da treeview selecionado acessado com o seguinte comando.define variable h-node define variable t-node as char no-undo. as char no-undo.

assign h-Node = chTreeView:SelectedItem:Key t-Node = chTreeView:SelectedItem:TEXT.

63Flexxo Centro de Ensino em Tecnologia e Negcios Ltda Av. Rio Branco, 105 | Bairro So Pelegrino | Caxias do Sul | RS www.flexxo.com.br | [email protected] | Fone: 54 3028 8708