Hallo zusammen,
ich habe einen komischen Effekt beim Laden von ActiveX-Controls festgestellt. Ich habe ein Object in einer Form hinterlegt versuche in der "Postopen" der Form das Objekt zu initialisieren.
Set myObject = Source.GetObject("MyObject")
und anschließend das Objekt zu verwenden:
MyObject.LoadMultiPageFromFile( fileToload, page)
Wenn ich nun ein Dokument öffne, erhalte ich keinen Fehler, allerdings habe ich anschließend auf den Inhalt des ActiveX-Objecktes keinen Zugriff und es wird nichts angezeigt. Schreibe ich eine Msgbox "blabla" vor den Aufruf "LoadMultiPageFromFile", ist alles wunderbar.
also kurzum:
Sub Postopen(Source As Notesuidocument)
Dim myObject as Variant
testFile = "C:\test.tif"
Set myObject = Source.GetObject("MyObject")
MyObject.LoadMultiPageFromFile( testFile, page)
MsgBox MyObject.FileHeight
End Sub
funktioniert nicht, und er Zugriff auf das Objekt mit "FileHeight" liefert 0 und die Datei nicht nicht angezeigt, ist aber geladen! (wenn ich das file zoome, erscheint es plötzlich)
Wobei:
Sub Postopen(Source As Notesuidocument)
Dim myObject as Variant
testFile = "C:\test.tif"
Set myObject = Source.GetObject("MyObject")
MsgBox "hello activeX"
MyObject.LoadMultiPageFromFile( testFile, page)
MsgBox MyObject.FileHeight
End Sub
funktioniert, die korrekte FileHeight ausgibt und die Datei auch anschließend direkt anzeigt.
Irgendwie scheint die MsgBox das Frontend des Notes-Client zu beeinflussen und der Ladevorgang des Controls scheint anschließend fortgeschrittener zu sein?!?
Zuerst dachte ich an ein zeitliches Problem, aber ein "Sleep X" anstatt einer MsgBox erzeugt nicht das gleiche Ergebnis sondern führt ebenfalls zu einem leeren Control.
Weiß jemand Rat? Ist das ein generelles Problem von Notes? Meine Version ist der englische FullClient 8.5.2.
Vielen Dank im Voraus
Grüße Thomas :-)
Nachtrag: Im Debug-Mode geht es ebenfalls ohne MsgBox?!? Habe ein Beitrag im Forum mit ähnlichem Fehler gefunden, aber die Lösung war ein Wechsel der ActiveX Komponenten. Das wäre unschön, da der Kunde bereits die Lizenz erworben hat. Während der Entwicklung und der Tests ist es uns nicht aufgefallen, da die Demoversion immer eine MsgBox anzeigt - ganz schön doof