Aller au contenu

Un problème avec MdiActiveDocument


Messages recommandés

Bonjour à tous,

 

je rencontre un petit soucis avec "MdiActiveDocument".

 

Quand j'exécute le code si dessous, DocumentManager.MdiActiveDocument = doc1; fait ce que je lui demande :cool:

 

Mais quand j'exécute, DocumentManager.MdiActiveDocument = doc2; rien ne se passe :mad:

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;

using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.Runtime;
using Autodesk.AutoCAD.Geometry;
using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.EditorInput;
using Autodesk.AutoCAD.Interop;
using AcApp = Autodesk.AutoCAD.ApplicationServices;

namespace test
{
       [CommandMethod("test1")]
       public void test1()
       {
               DocumentCollection DocumentManager = AcApp.Application.DocumentManager;
               Document doc1 = DocumentManager.Open("D:\rdc.dwg");
               Document doc2 = DocumentManager.Open("D:\ss.dwg");
               DocumentManager.MdiActiveDocument = doc1;
               DocumentManager.MdiActiveDocument = doc2;
       }
}

 

Je dois oublier quelque chose quelque part, mais je ne vois pas quoi.

 

Merci d'avance de vos réponses :cool:

http://www.carpetdiem.net

Plugins pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

Bonjour,

 

MdiActiveDocument, ne sert que pour le document actif ....

pour les document non actif tu dois travailler avec DocumentManager.Open

Dim MonDessin1 As Document =Application.DocumentManager.DocumentManager.Open(C:\MonDwg1, passer les Arguments nécessaire).

Dim MonDessin2 As Document =Application.DocumentManager.DocumentManager.Open(C:\MonDwg2, passer les Arguments nécessaire).

 

Sacha

 

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

MdiActiveDocument est accessible en lecture et en écriture.

 

Le problème de Coyotte est simple : la commande 'test1' est lancée depuis le document actif (disons 'doc0'), elle ouvre deux autres documents ('doc1' et 'doc2' qui sont effectivement ajoutés à la collection DocumentManager).

Puis la commande rend 'doc1' actif mais ne peut continuer son exécution dans 'doc1' puisqu'elle a été lancée dans 'doc0'...

 

 

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Lien vers le commentaire
Partager sur d’autres sites

  • 4 semaines après...

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité