Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  API - Feature Manager ActiveX Control

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS
  
SIMULIA Regional User Meeting 2026, eine Veranstaltung am 17.06.2026
Autor Thema:  API - Feature Manager ActiveX Control (981 mal gelesen)
mafu
Mitglied
Student


Sehen Sie sich das Profil von mafu an!   Senden Sie eine Private Message an mafu  Schreiben Sie einen Gästebucheintrag für mafu

Beiträge: 18
Registriert: 15.10.2002

erstellt am: 09. Jun. 2005 09:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo alle Zusammen:

Ich habe folgendes Problem. Ich versuche ein Treeview Steuerelement auf eine selbst erstellten Feature Manager Tab zu plazieren. Ich benutze Solidworks 2004 + Visual Basic 6.0.

Dabei habe ich folgende Probleme / Fragen:

1. Deklariere ich das Treeview Objekt direkt als Treeview erhalte ich beim Erzeugen des Objekts ein "Type Mismatch". Deklariere ich es als Objekt, wird das Treeview Element angezeigt.
Hat jemand eine Erklärung hierfür?

2. Beim erzeugen des Steuerelemnts habe ich als Class ID die ID genommen die auch im SolidWorks Beispiel Makro verwendet wurde. Diese Class ID heißt "TreeCtrl".
Ist das korrekt so? Wo bekomme ich für die Steuerelemnte die korrekte Class ID?

3. Das Treeview Steuerelement wird bei mir zwar erzeugt, Knoten werden eingefügt, aber ich sehe die Knoten nicht. Auch im SolidWorks Beispielmakro tritt diese Erscheinung auf. Die Knoten sind da (man erkennt die Kästchen mit dem Plus zeichen und kann den Baum auch erweitern, aber man sieht keine Knoteneinträge), aber man sieht keine Knotenbeschrifftung.
Was ist da falsch?

4. Kann man die Events (z.B. Node_Click) eines auf einem Feature Manager Tab erzeugten Steuerelements benutzen. Wenn ja, wie geht das?

Hier mal der Teil des Codes:

Public Sub Baum()
    Const IconSmall                    As String = "D:\toolbar_small.bmp"

   
    Dim swConf                          As SldWorks.Configuration
    Dim swRootComp                      As SldWorks.Component2
    Dim pIcon                          As IPictureDisp
    Dim pModViewMgr                    As SldWorks.ModelViewManager
    Dim swFeatMgrTabTop                As SldWorks.FeatMgrView
    Dim swFeatMgrTabBtm                As SldWorks.FeatMgrView
    Dim tvRootNode                      As MSComctlLib.Node
    Dim tvTreeCtrl                      As Object
   
    Dim nActivePane                    As Long
    Dim nViewHwnd                      As Long
   
    Dim FeatManView As SldWorks.FeatMgrView
   
    Set swModel = swApp.ActiveDoc
    Set pModViewMgr = swModel.ModelViewManager
   
    Set swFeatMgrTabTop = pModViewMgr.CreateFeatureMgrControl2(IconSmall, "MSComctlLib.TreeCtrl", "", "TDE top tooltip", swFeatMgrPaneTop)
   
    Set tvTreeCtrl = swFeatMgrTabTop.GetControl
   
   
    tvTreeCtrl.Nodes.Clear
    tvTreeCtrl.LineStyle = tvwRootLines
    tvTreeCtrl.Style = tvwTreelinesPlusMinusText
    tvTreeCtrl.Indentation = 25
 
   
    Set tvRootNode = tvTreeCtrl.Nodes.Add(, tvwFirst, "root", "Test")
    tvRootNode.BackColor = &HFF00&
   
    tvTreeCtrl.Nodes.Add "root", tvwChild, "key", "Test2"
   


    swModel.FeatureManagerSplitterPosition = 0
   
    'swFeatMgrTabTop.ActivateView
   
End Sub

Sorry für den langen Text, ich hoffe trotzdem das Ihr vielleicht den einen oder anderen Tip für mich habt.

Viele Grüße Mathias


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mafu
Mitglied
Student


Sehen Sie sich das Profil von mafu an!   Senden Sie eine Private Message an mafu  Schreiben Sie einen Gästebucheintrag für mafu

Beiträge: 18
Registriert: 15.10.2002

erstellt am: 09. Jun. 2005 16:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ok! Frage 2 und Frage 4 haben sich geklärt.

Zu Frage 3:

Das ist seltsam, da andere Controls (z.B. Slider)tadellos angezeigt werden.

Was mir absolut auf den Nägeln brennt ist das "Type Mismatch von Frage 1.

Der Quelltext funktioniert im Macro mit konkreter Deklaration z.B:

tvTreeCtrl as MSComctlLib.TreeView

bei einer Verwendung des identischen Quelltext in einer AddIn dll, muss ich die gleiche Variable mit
tvTreeCtrl as Object
deklarieren, damit ich keinen "Type Mismatch" bekomme.

Wenn jemand dazu einen Tipp hätte wäre das Super.

Viele Grüße Mathias

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mafu
Mitglied
Student


Sehen Sie sich das Profil von mafu an!   Senden Sie eine Private Message an mafu  Schreiben Sie einen Gästebucheintrag für mafu

Beiträge: 18
Registriert: 15.10.2002

erstellt am: 06. Jul. 2005 14:58    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


ActiveX_FMTab_TreeView_assy.zip

 
Hallo Ich noch mal!

Ich bin immernoch dabei zu Versuchen einen eigenen Treeview im Solidworks Feature Manager anzeigen zu lassen.

Anbei mal ein Makro von der Solidworks Homepage. Bei diesem Makro werden zwar die einzelnen Knoten angezeig, aber sie sind nicht sichtbar. Nur die Verbindungslinien und die Plus bzw. Minuszeichen sehe ich.

Wäre schön wenn jemand das Makro mal probieren könnte und Bescheid sagt ob es bei Ihm funktioniert.

Danke

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2024 CAD.de | Impressum | Datenschutz