RicardoHorta.Net - Word XP - Controles: Eventos
SUBMARINO: Fácil ! Rápido ! Seguro !
Dicas microsoftianas.
Click, MouseOver, Initialize...,enfim, Eventos !
- Eventos são ações causadas pelo usuário. E isto inclui você. Afinal,
você, também, é usuário(a) do Word XP.
- Clicar com o botão esquerdo num formulário, mover o ponteiro do mouse sobre os objetos
( botões, caixa de combinação, caixa de listagem... ), clicar com o botão direito
são alguns dos eventos mais comuns e podem ser programados para executar procedimentos
como exibir uma caixa de diálogo, imprimir um documento, ativar um menu de atalho
ou alterar a cor da fonte.
- Objetos por si só nada executam. Dentro do Editor do Visual Basic
crie, por exemplo, um formulário e clique
no botão Executar Sub/UserForm da barra de ferramentas Padrão.
- Em seguida, clique com o botão esquerdo. Nada irá acontecer. Por que ? O evento Click do
UserForm foi acionado, mas como não há linha de código associada a ele, nenhuma ação é executada.
- No exemplo à direita, eu programei o evento Click para exibir uma caixa de mensagem.
- Tem evento para todos os gostos e necessidades. Este que está sendo executado aí é
o evento MouseOver, que ocorre quando o usuário move o ponteiro do mouse sobre o formulário.
- A propriedade BackColor ( cor do fundo ) do UserForm
é alterada quando o ponteiro muda de lugar.
Colocando azeitona na empada do outro.
- Os eventos de um objeto podem ser utilizados para definir o conteúdo de
outro objeto. Neste exemplo, o evento Initialize do UserForm
define
o conteúdo da caixa de listagem (
ListBox ).
- O evento Initialize
de um formulário ocorre logo após ele ter sido criado e antes de ser exibido para o usuário.
- Quando o formulário aparece na tela, a caixa de listagem está com o seu
conteúdo preenchido.
- Todo objeto tem no mínimo um evento.
- No evento Click desta caixa de listagem é possível saber qual
opção foi selecionada.
Receita de bolo ( ou será, de evento ? ).
- Vou descrever em linhas gerais como criar a procedure do evento Click
de um CommandButton, mas o que eu falar aqui servirá para qualquer outro evento
ou objeto. O processo para inserir as instruções é o mesmo para todos os eventos.
- Após inserir o botão no formulário, é preciso definir o que acontecerá quando
o usuário clicar com o botão esquerdo.
- Dentro da janela do Editor do Visual Basic, clique 2 vezes com o botão esquerdo no CommandButton ou...
- ...clique 1 vez com o botão direito e, no menu que surgir,
escolha Exibir código.
- O Editor criará a procedure referente ao evento Click.
Ué ! Ele advinhou que eu queria o evento Click ?
- Não. Ele não advinhou. Click é o evento padrão de um botão de comando. Toda vez que
você escolher Exibir código, será aberta a procedure relativa ao evento Click. Isto
vale para CommandButton e para todos os outros objetos. Sempre será criada a procedure
do evento padrão do objeto. Isto não quer dizer, necessariamente, que sempre será a
procedure relativa a Click. Irá depender do evento padrão do objeto selecionado.
- O nome da procedure é composto do nome do botão ( CommandButton1 )
+ _ + nome do evento ( Click ): CommandButton1_Click() .
- Este nome corresponde à propriedade Name do objeto.
- Se você definir a propriedade Name como Botao_Cancelar, a...
- ...procedure relativa ao evento Click se chamará Botao_Cancelar_Click.
- E aqui vai um alerta: Sempre defina o nome do objeto antes de criar as procedures.
- Se você criar a procedure e depois alterar o nome do objeto, o editor não
irá atualizar o nome da procedure. O caminho certo é:
- Defina a propriedade Name ou , se preferir, mantenha o nome sugerido pelo VBA:
CommandButton1.
- Crie a procedure.
- Seguindo esta regra, não haverá problema.
Você falou que a procedure criada refere-se ao evento padrão do objeto.
- Sim. Se você pedir para exibir o código, será aberto o evento padrão do
objeto escolhido.
E se eu quiser trabalhar com outro evento ?
- Não tem problema.
- Se você clicar 2 vezes com o botão esquerdo num CommandButton, será criada a procedure referente ao
evento Click, certo ?
- Suponha que você queira trabalhar com outro evento, por exemplo, MouseMove, que ocorre
quando o usuário move o ponteiro do mouse sobre o objeto.
- Simples. Ignore as linhas criadas e clique nesta seta à direita
da caixa Procedure.
- Selecione o evento.
- O Editor criará a procedure relativa ao evento selecionado.
E aquelas linhas do evento que não vou utilizar ?
- ...pressione a tecla [ Delete ]. É isso mesmo. Elas podem
ser excluídas.
- Esta é uma visão geral sobre eventos. Nas próximas lições deste módulo
vou falar sobre cada um deles ( Click, MouseMove, DblClick,... ) e
como exibir caixas de mensagem, fechar formulários, alterar a
cor da fonte, enfim, truques para fazer a cabeça dos seus usuários.
SUBMARINO: Fácil ! Rápido ! Seguro !
SUBMARINO: Fácil ! Rápido ! Seguro !
04/06/2002 - www.ricardohorta.net - Direitos adquiridos - Autor: Ricardo Horta