| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: CustomTable in ein IDW einfügen (1502 mal gelesen)
|
sebastianapa Mitglied Student
Beiträge: 20 Registriert: 13.11.2006 .NET 2.0, VS2005, IV11
|
erstellt am: 24. Jan. 2007 16:09 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich möchte in ein IDW ein CustomTable einfügen. Der dafür bereitgestellten Methode (CustomTables.Add(...)) müssen laut Inventor-Hilfe 5 Parameter übergeben werden, weiterhin gibt es 4 optionale Parameter. Unter .NET müssen allerdings alle 9 Parameter spezifiziert werden. Da liegt auch mein Problem: Ich weiß nicht was ich für den Parameter "More Info", der folgendermaßen in der Hilfe beschrieben wird übergeben soll. Zitat: More Info: Optional input NameValueMap that specifies additional information for the table creation. This argument is currently ignored.
Bzw. weiß ich nicht wie ich ein Objekt vom Typ NameValueMap erzeugen kann. Da es eine abstrakte Klasse ist, kann man es mit einem new-Konstrukt ja nicht machen. Ist eventuell ein spezielles, existierendes Objekt gemeint, das man übergeben muss? Gruß Sebastian
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
daywa1k3r Moderator Softwareentwickler
Beiträge: 3497 Registriert: 01.08.2002 Desktop: 3.3GHz;8GB;SSD OCZ Vertex 3;Gainward Phantom GTX570 Laptop: Alienware m17x Win7, Inventor2012
|
erstellt am: 24. Jan. 2007 16:18 <-- editieren / zitieren --> Unities abgeben: Nur für sebastianapa
Hi, Code:
C#Inventor.NameValueMap oMap = Inventor.Application.TransientObjects.CreateNameValueMap();
demnach VB.NET wahrscheinlich:Code:
Dim oMap as Inventor.NameValueMap oMap = Inventor.Application.TransientObjects.CreateNameValueMap()
Nachtrag: Du kannst bei Optional in .NET immer versuchen NULL bzw. Nothing zu übergeben (angenommen du brauchst die Parameter nicht) ------------------ Grüße Igor FX64 Software Solutions Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
sebastianapa Mitglied Student
Beiträge: 20 Registriert: 13.11.2006 .NET 2.0, VS2005, IV11
|
erstellt am: 06. Feb. 2007 12:37 <-- editieren / zitieren --> Unities abgeben:
Hallo daywa1k3r, vielen Dank für Deine Antwort, das Erzeugen eines NameValueMap funktioniert so. Ich hab aber nun ein weiteres Problem, beim Versuch eine Tabelle einzufügen: Es gibt beim Aufruf der Methode CustomTables.Add() immer eine NullReferenceException. Alle übergebenen Parameter habe aber einen Wert und sind nicht Null. Hast Du eine Idee woran es liegen kann? Hab meinen Code mal mitangefügt. Gruß Sebastian Code:
//Zeichnungsdokument Inventor.DrawingDocument oDrawDoc; oDrawDoc = m_InventorApplication.ActiveDocument as Inventor.DrawingDocument; //Zeichnungsblatt Inventor.Sheet oSheet; oSheet = oDrawDoc.ActiveSheet; //Spalten-Titel Array oTitles = new string[] { "1.Spalte", "2.Spalte", "3.Spalte" }; //Einfügepunkt erstellen Inventor.Point2d oPunkt = m_InventorApplication.TransientGeometry.CreatePoint2d(15, 15); //Inhalt string[] oContents = new string[] {"1", "2", "3", "4", "5", "6", "7", "8", "9"}; //Spaltenbreite double[] oColumnWidths = new double[] {2.5, 2.5, 4}; //Zeilenhöhe double[] oRowHeights = new double[] {2, 2, 2}; //more Info Inventor.TransientObjects oTo = m_InventorApplication.TransientObjects; Inventor.NameValueMap oMap = oTo.CreateNameValueMap(); //Tabelle erzeugen Inventor.CustomTables oCustomTables = oSheet.CustomTables; Inventor.CustomTable oCustomTable = oCustomTables.Add("Tabellentitel", oPunkt, 3, 3, ref oTitles, oContents, oColumnWidths, oRowHeights, oMap);
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JesG Mitglied Software Entwickler
Beiträge: 5 Registriert: 17.06.2007
|
erstellt am: 17. Jun. 2007 10:01 <-- editieren / zitieren --> Unities abgeben: Nur für sebastianapa
Hi, habe das selbe Problem. Habe ein AddIn für IV11 welches ein CustomTable in eine IDW einfügt ( in C# ). Bei dem Versuch das ganze auf IV2008 zu portieren bin ich auf den gleichen Fehler gelaufen. Hast du dafür eine Lösung gefunden ? Gruss JesG Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|