Acesso a Propriedades, Métodos ou Eventos Não Disponíveis nas Instâncias

<< Clique para Mostrar o Sumário >>

 

Acesso a Propriedades, Métodos ou Eventos Não Disponíveis nas Instâncias

Uma das grandes vantagens da Biblioteca HighPerformance Template é disponibilizar objetos previamente configurados e com design padronizado, permitindo ao usuário concentrar seu tempo no desenvolvimento de novos recursos e funcionalidades de maior valor para o processo. O usuário instancia o objeto e já pode usá-lo com mínimas (ou nenhuma) alteração. Isto preserva as características principais da metodologia de alto desempenho visual, ao mesmo tempo que garante a praticidade de uso.

Há casos, no entanto, em que alguns recursos importantes do objeto estão indisponíveis na instância. Um exemplo são os métodos de objetos. No caso de Listas (List Box) ou Listas de Seleção (Combo Box), o funcionamento básico do objeto depende de alguns destes métodos, como por exemplo o método AddItem.

Nestes casos específicos, a Biblioteca HighPerformance Template fornece acesso integral ao objeto através da propriedade Object. Esta propriedade referencia o objeto original, tornando disponíveis todas as suas propriedades e métodos. Por exemplo, o método AddItem é acessado na instância, por script, usando o código a seguir.

Object.AddItem "Item a ser adicionado"

 

Este recurso deve ser usado apenas para garantir o funcionamento básico do controle, e não para descaracterizá-lo, alterando sua cor de fundo ou sua fonte, pois o controle já se encontra harmonizado com todos os demais objetos da Biblioteca HighPerformance Template.

Já eventos como Click, Change, MouseMove e outros, ganham propriedades equivalentes com a adição do prefixo Event em seu nome. Portanto, EventClick, EventChange e EventMouseMove são propriedades que sofrem alteração em seu valor quando o evento original ocorre. O usuário deve criar um evento personalizado (Evento de Usuário) para executar um script na ocorrência do evento original. A figura a seguir mostra a janela de criação de um Evento de Usuário chamado OnEventClick.

Criação de um evento personalizado OnEventClick

Criação de um evento personalizado OnEventClick

No caso dos eventos, há ainda a particularidade de eventos que retornam valores e eventos que não retornam valores. Por exemplo, o evento Click não retorna nenhum valor ao usuário.

Sub ComboBox1_Click()

 

Quando um evento não retorna valores, cada ocorrência incrementa o valor da propriedade correspondente. No exemplo anterior, cada clique do mouse no objeto incrementa o valor da propriedade EventClick. Assim, pode-se monitorar qualquer mudança de valor e executar um script ao clicar no objeto.

Já o evento KeyDown retorna o código das teclas pressionadas, KeyCode e Shift.

Sub ComboBox1_KeyDown(KeyCode, Shift)

 

Quando o evento retorna valores, estes são passados para a propriedade correspondente na forma de um vetor. No exemplo anterior, a cada ocorrência do evento os parâmetros KeyCode e Shift são passados à propriedade EventKeyDown como um vetor.

Array(KeyCode, Shift)

 

Assim é possível monitorar alterações no valor da propriedade e recuperar esta informação na instância do objeto, por exemplo usando o código a seguir.

Sub hpComboBox1_OnEventKeyDown()
  'Propriedade EventKeyDown é um vetor
  vKeyCode = EventKeyDown(0)
  vShift = EventKeyDown(1)
  MsgBox "KeyCode = " & CStr(vKeyCode)
  MsgBox "Shift = " & CStr(vShift)
End Sub

Esta página foi útil?