Bonjour,
jJe viens de passer sous SW2023 (Anciennement 2020). Et j’ai cette macro pour afficher la description dans feature manager:
Mais je voudrais dans cette macro enlever la description secondaire:
Une idée pour compléter cette macro ?
Merci
Bonjour,
jJe viens de passer sous SW2023 (Anciennement 2020). Et j’ai cette macro pour afficher la description dans feature manager:
Mais je voudrais dans cette macro enlever la description secondaire:
Une idée pour compléter cette macro ?
Merci
Bonjour;
modifiez votre ligne:
swfeature.ShowComponentDescriptions=True
en
swfeature.ShowComponentDescriptions=False
Solidworks propose ceci (pour ajuster les types à afficher sur les composants (feautreTree):
True => Visible
False =>Caché
Bonjour,
swfeature.ShowComponentDescriptions correspond à la description du composant au niveau primaire. Ce que je voudrais , c’est désactiver la description du composant au niveau secondaire et afficher la description au niveau primaire.
Merci.
Bonjour,
Regarder plutôt de ce côté pour intervenir sur le second identifiant: SetComponentIdentifiers Method (IFeatureManager) - 2023 - SOLIDWORKS API Help
Bonjour Cyril,
Merci mais je n’arrive pas à en tirer quelque chose.
Bonjour,
Bon ça semble avoir un bug.
En gros une fois un paramètre appliqué via le set, quasi impossible de le passer à false.
Ce que j’ai testé qui pourrait peut-être fonctionner dans votre cas c’est ceci:
Dim swApp As SldWorks.SldWorks
Dim SelMgr As SldWorks.SelectionMgr
Dim swFeatMgr As SldWorks.FeatureManager
Dim Part As SldWorks.ModelDoc2
Dim compIdentifierRet As Long
Sub Main()
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
Set swFeatMgr = Part.FeatureManager
compIdentifierRet = swFeatMgr.SetComponentIdentifiers(swComponentIdentifier_ComponentDescription, 0, 0) 'Bascule la valeur primaire sur Description du composant afin de vider la sélection dans la valeur secondaire
compIdentifierRet = swFeatMgr.SetComponentIdentifiers(swComponentIdentifier_ComponentName, 0, 0) 'Rebascule la valeur primaire sur Nom du composant
End sub
Visiblement problème connu en version 2022:
https://ww3.cad.de/foren/ubb/Forum2/HTML/034314.shtml
un SPR à été créé en sw2022SP5, traduction du 2ème message:
Après un bref test, j'ai remarqué que les options sont activées, mais ne peuvent plus être désactivées par macro.
Il existe aussi un SPR à ce sujet SPR1237147
Comme d’hab, sont pas pressés
Le SPR ne porte que sur ce point swFeatMgr.HideComponentSingleConfigurationOrDisplayStateNames = False
Ce que j’ai constaté également sur la 2023 mais c’est un peu plus général sur le reste.
Les autres options, impossible de les inhiber également.
Mais avec ta solution @Cyril.f , il est effectivement possible de contourné le bug et de cocher les 2 cases primaire en décochant la description secondaire:
Dim swApp As SldWorks.SldWorks
Dim SelMgr As SldWorks.SelectionMgr
Dim swFeatMgr As SldWorks.FeatureManager
Dim Part As SldWorks.ModelDoc2
Dim compIdentifierRet As Long
Sub Main()
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
Set swFeatMgr = Part.FeatureManager
compIdentifierRet = swFeatMgr.SetComponentIdentifiers(swComponentIdentifier_ComponentDescription, 0, 0) 'Bascule la valeur primaire sur Description du composant afin de vider la sélection dans la valeur secondaire
compIdentifierRet = swFeatMgr.SetComponentIdentifiers(swComponentIdentifier_ComponentName, 0, 0) 'Rebascule la valeur primaire sur Nom du composant
' Show Component Descriptions is set to true
swFeatMgr.ShowComponentDescriptions = True
' Show Component Configuration Names is set to false
swFeatMgr.ShowComponentConfigurationNames = True
' Show Component Configuration Descriptions is set to false
swFeatMgr.ShowComponentConfigurationDescriptions = False
' Show Component Names
swFeatMgr.ShowComponentNames = True
End Sub
Après la macro:
Bonjour,
Merci pour vos essais mais chez moi la macro s’arrête sur cette ligne avec « Erreur d’exécution 449 : Argument non facultatif »