M.b.v. VB heb ik een OCX gemaakt. Hoe kan ik het zo maken dat als je in Access (in code) de naam van de control intikt hij automatisch alle beschikbare functie's, properties, etc laat zien zoals bij de standaard controls?
Even uit m'n hoofd gezegd (heb het 2 jaar geleden ook een keer gedaan) is dat een kwestie van handmatig een reference naar je OCX toevoegen in vba.
Als je em niet met CreateObject doet doet hij dat standaard volgens mij.Verwijderd schreef op woensdag 22 november 2006 @ 16:30:
M.b.v. VB heb ik een OCX gemaakt. Hoe kan ik het zo maken dat als je in Access (in code) de naam van de control intikt hij automatisch alle beschikbare functie's, properties, etc laat zien zoals bij de standaard controls?
Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.
Voor alle duidelijkheid de OCX werkt. Om echter type fouten te voorkomen is het handig als je tijdens het type van de control name en dan de een punt automatisch ziet welke properties/methodes er binnen de OCX (control) bruikbaar zijn.
De OCX heb ik niet met een createobject gemaakt maar gewoon via components toegevoegd en op form gesleept.
Maar.... hoe zit dat met die reference?
De OCX heb ik niet met een createobject gemaakt maar gewoon via components toegevoegd en op form gesleept.
Maar.... hoe zit dat met die reference?
Eerst een IDL of een ODL file schrijven om daar een TLB van te bakken heb je niet nodig want VB zet zelf standaard of je nou wilt of niet een Typelibrary in de OCX.
Wat farlane zegt: als je geen late binding gebruikt zou de intellisense van Access moeten werken. Misschien is er iets in Access niet goed? Kijk in OLEview (zit standaard bij Visual Studio) of alle interfaces aanwezig zijn. Test het ook eens in VB zelf om te kijken of het allemaal werkt. Als dat het geval is zou je OCX goed moeten zijn. Helemaal omdat de OCX in VB is gemaakt en je daarin niet echt veel (lees:geen) 'ruimte' krijgt om je interfaces te wijzigen.
Wat farlane zegt: als je geen late binding gebruikt zou de intellisense van Access moeten werken. Misschien is er iets in Access niet goed? Kijk in OLEview (zit standaard bij Visual Studio) of alle interfaces aanwezig zijn. Test het ook eens in VB zelf om te kijken of het allemaal werkt. Als dat het geval is zou je OCX goed moeten zijn. Helemaal omdat de OCX in VB is gemaakt en je daarin niet echt veel (lees:geen) 'ruimte' krijgt om je interfaces te wijzigen.
Lekker op de bank
Helaas heb ik nog geen antwoord maar wel meer info.
Om te testen of het aan de zelfgemaakt OCX ligt of aan iets anders heb ik de standaard communication control van MS (MSCOMM) gebruikt. 2 verschillende machines en 2 verschillende versies (Access van office 2000 en die van 2002) geven hetzelfde probleem.
In het properties venster zijn de properties te zien en als je weet wat je moet intikken zie je dat ACCESS de hoofdletters op de plaatsen zet waar ze 'horen' te staan. (mscomm.commport -> mscomm.CommPort) maar de Intellesense doet het helaas niet.
Wie kan me helpen?
Om te testen of het aan de zelfgemaakt OCX ligt of aan iets anders heb ik de standaard communication control van MS (MSCOMM) gebruikt. 2 verschillende machines en 2 verschillende versies (Access van office 2000 en die van 2002) geven hetzelfde probleem.
In het properties venster zijn de properties te zien en als je weet wat je moet intikken zie je dat ACCESS de hoofdletters op de plaatsen zet waar ze 'horen' te staan. (mscomm.commport -> mscomm.CommPort) maar de Intellesense doet het helaas niet.
Wie kan me helpen?
Pagina: 1