Shamil Salakhetdinov
shamil at smsconsulting.spb.ru
Fri Jun 6 03:55:25 CDT 2003
Bob, You can set your class module's Instancing property to '2-PublicNotCreatable' then you can continue to use it the way you used it without library - you will just need to get its instance by your wrapped/helper function GetclsInventory... HTH, Shamil ----- Original Message ----- From: Bob Bedell To: accessD at databaseadvisors.com Sent: Friday, June 06, 2003 10:21 AM Subject: [AccessD] Where does WithEvents go? 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 ------------------------------------------------------------------------------ _______________________________________________ AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://databaseadvisors.com/pipermail/accessd/attachments/20030606/222d7c74/attachment-0001.html>