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>