GETOBJECT |
Demande d'objet |
---|---|
Visual Basic |
Syntaxe
Function GetObject([pathname][,class]) |
Paramètres
Nom | Description |
---|---|
classe | Ce paramètre permet d'indiquer la classe d'objet à utiliser. |
pathname | Ce paramètre permet d'indiquer le nom du fichier contenant l'objet. |
Description
Cette fonction permet de demander la référence de l'objet ActiveX ou l'OLE.
Remarques
- Utilisez la fonction GetObject pour accéder à un objet Automation à partir d'un fichier et affecter l'objet à une variable d'objet. Utilisez l'instruction Set pour affecter l'objet renvoyé par GetObject à la variable objet. Par exemple :
- Certaines applications vous permettent d'activer une partie d'un fichier. Ajoutez un point d'exclamation (!) à la fin du nom du fichier et suivez-le d'une chaîne de caractères identifiant la partie du fichier que vous souhaitez activer.
- Par exemple, dans une application de dessin, vous pouvez avoir plusieurs calques dans un dessin entreposés dans un fichier. Vous pouvez utiliser le code suivant pour activer un calque dans un dessin appelé MONSCHEMA.CAD :
- Utilisez la fonction GetObject lorsqu'il existe une instance actuelle de l'objet ou si vous souhaitez créer l'objet avec un fichier déjà chargé. S'il n'y a pas d'instance actuelle et que vous ne voulez pas que l'objet démarre avec un fichier chargé, utilisez la fonction CreateObject.
- Si un objet s'est enregistré en tant qu'objet à instance unique, une seule instance de l'objet est créée, quel que soit le nombre d'exécutions de CreateObject. Avec un objet à instance unique, GetObject renvoie toujours la même instance lorsqu'il est appelé avec la syntaxe de chaîne de caractères de longueur nulle (""), et il provoque une erreur si le paramètre pathname est omis.
Dim CADObject
Set CADObject = GetObject("C:\GLADIR\MONSCHEMA.CAD")
Lorsque ce code est exécuté, l'application associée au chemin spécifié est démarrée et l'objet du fichier spécifié est activé. Si pathname est une chaîne de caractères de longueur nulle (""), la fonction GetObject renvoie une nouvelle instance d'objet du type spécifié. Si le paramètre pathname est omis, la fonction GetObject renvoie un objet actuellement actif du type spécifié. Si aucun objet du type spécifié n'existe, une erreur se produit.
Set LayerObject = GetObject("C:\GLADIR\MONSCHEMA.CAD!Layer3")
Si vous ne spécifiez pas la classe de l'objet, Automation détermine l'application à démarrer et l'objet à activer, en fonction du nom de fichier que vous fournissez. Cependant, certains fichiers peuvent prendre en charge plusieurs classes d'objets. Par exemple, un dessin peut prendre en charge trois types d'objets différents : un objet Application, un objet Drawing et un objet Toolbar, faisant tous partie du même fichier. Pour spécifier quel objet dans un fichier vous souhaitez activer, utilisez le paramètre de classe facultatif. Par exemple :
Dim MyObject
Set MyObject = GetObject("C:\DESSINS\ECHANTILLON.DRW", "INVENTION.DESSIN")
Dans l'exemple précédent, INVENTION est le nom d'une application de dessin et DESSIN est l'un des types d'objets qu'il prend en charge. Une fois qu'un objet est activé, vous le référencez dans le code à l'aide de la variable d'objet que vous avez définie. Dans l'exemple précédent, vous accédez aux propriétés et aux méthodes du nouvel objet à l'aide de la variable objet MyObject. Par exemple :
MyObject.Line 9, 90
MyObject.InsertText 9, 100, "Bonjour GLADIR!"
MyObject.SaveAs "C:\DESSINS\ECHANTILLON.DRW"
Exemple
Voici un exemple d'une utilisation typique de cette fonction :