Cuestión : El ms tiene acceso al tratante de acontecimiento global

Esto se refiere al acceso del ms que 2003 VBA.
I tienen 336 textboxes en una forma.  Quisiera que todos respondieran a un acontecimiento del double-click en la misma manera--y quizás en el futuro a otros acontecimientos.  Preferiría no crear 336 acontecimientos separados en el módulo de la forma, uno para cada textbox.  Muestrear el código para este tipo de solución, para Excel, puede ser encontrado en: el rel= " nofollow " del " _blank " del target= de " http://j-walk.com/ss/excel/tips/tip44.htm " del href= del
el /tips/tip44.htm

I de http://j-walk.com/ss/excel no puede conseguir mi código adaptado al trabajo en el acceso.  Compila sin errores--pero el acontecimiento del double-click no consigue dirigido.  ¿Cuáles son yo que hace mal?  Código a seguir: el

in un módulo de la clase nombró el class= " lineNumbers " >
1 del >
'clsTextboxGroup
'-------------------------------------------------------------------
La opción compara la base de datos
Opción explícita
WithEvents público TextBoxGroup como Access.TextBox

TextboxGroup_DblClick secundario privado (cancelación como número entero)
    MsgBox “hola de” y TextBoxGroup.Name
    'Pondré en acontecimientos más substantivos después de que consiga este funcionamiento
Submarino del extremo
'-------------------------------------------------class= >

In de
1 del >

'el módulo de la forma
La opción compara la base de datos
Opción explícita
MyTextboxes dévil () como nuevo clsTextBoxGroup

Form_Load secundario privado ()
Llamada InitMyTextboxEvents
submarino del extremo
'---------------------------------------------------
InitMyTextboxEvents secundario público ()
TextboxCount dévil como número entero
Ctl dévil como control

'Crear los objetos del Textbox
TextboxCount = 0
Para cada ctl en las formas (“frmWeek”). Detail.Controls
    Si ctl.ControlType = acTextBox después
        Si ctl. El nombre tiene gusto del “*booking*” entonces 'snag solamente los controles required del textbox
            TextboxCount = TextboxCount + 1
            Coto MyTextboxes (1 de ReDim a TextboxCount)
           Fijar MyTextboxes (TextboxCount) .TextBoxGroup = ctl
        Terminar si
    Terminar si
Ctl siguiente

terminar el class= >
de sub
class= del

Respuesta : El ms tiene acceso al tratante de acontecimiento global

No he trabajado con las clases todo que mucho, pero yo ve unas par de cosas.

1. Usted ha creado una variable en su módulo de la clase, TextBoxGroup pero no señala cualquier cosa.

Usted necesita agregar:

Característica pública TextBoxGroup determinado (txt como Textbox)

   Fijar TextBoxGroup = el txt

Terminar el submarino

a su clase.

2. El acceso tiene un built-in de la optimización que si no considera “[procedimiento del acontecimiento]” para una característica del acontecimiento, él no levante un acontecimiento.  Usted necesita tan fijar eso.  Usted puede hacer esto en la clase fijada:


Característica pública TextBoxGroup determinado (txt como Textbox)

    Fijar TextBoxGroup = el txt
    TextBoxGroup.OnDblClick = “[procedimiento del acontecimiento]”

Submarino del extremo

3. Durar, como Helen ha dicho, yo no piensan que usted puede utilizar un arsenal como eso.  en lugar, usted necesita hacer que su clase maneje una sola caja de texto y después utilice una colección en la forma para construir un arsenal de controles.  Veré si no puedo desenterrar un cierto código o alguien que han trabajado con las clases mucho más.

JimD.

Otras soluciones  
 
programming4us programming4us