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