[AccessD] Where does WithEvents go?

Bob Bedell bobbedell15 at msn.com
Fri Jun 6 01:21:40 CDT 2003


I hope I can make this intelligible. Info on this issue seems a bit
sparse. I have a custom class and a form that work fine together. The
class declares a custom event using Public Event syntax in the general
declaration and Raise syntax in a method. The calling class (the form)
declares a private instance of the class using WithEvents and
instantiates it. No problems.
 
Now I'm trying to import the class into a library (mda.) and set a
reference to it in the database that contains the calling form. It's my
understanding that my calling application can't instantiate the class
directly, and needs to use a wrapper function. So I added a standard
module to the calling application that calls a function in the library
database which returns a copy of the object. The calling database then
has a public, shared copy of the object to work with. The standard
module in the calling database is:
 
Public g_oInventory As clsInventory
 
Public Sub Startup()
    ' Get handles to shared objects
    Set g_objInventory = GetclsInventory
 
    DoCmd.OpenForm "frmInventory"
End Sub
 
The standard module in the library database (where the class is located)
is:


Public Function GetclsInventory()
    Dim objInventory As clsInventory
    Set GetclsInventory = New clsInventory
End Function
 
Here's my problem. Using the library scenario, I can't find any place to
put my WithEvents statement. The old declaration (before seperating the
class and the form) was in the forms general declaration:
 
Private WithEvents m_objProduct As clsInventory
 
 But now (library scenario) the declaration needs to be global, needs to
include WithEvents, and needs to be in a class or form module
(WithEvents won't work in a standard module).
 
Should I do a VB ActiveX component instead? I'm kinda' at a loss here.
Real limited experience with classes/libraries stuff. Thanks to anyone
who can make heads or tails of that.
 
Bob
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://databaseadvisors.com/pipermail/accessd/attachments/20030606/80e66c6f/attachment.html>


More information about the AccessD mailing list