Le forum Bentley Systems francophone

Nous souhaitons par ce forum créer un lieu d’échange francophone sur les produits de Bentley Systems.

La bonne humeur et la courtoisie sont bien entendu de mise. Nous nous réservons le droit d’exclure les membres qui contreviendraient aux objectifs recherchés.

Si une rubrique n’existe pas et que vous souhaitiez sa présence, demandez-la nous via le formulaire en bas de page.

Navigation du forum
Fil d’Ariane du forum – Vous êtes ici :ForumCAO: MicroStation V8iTaper une commande dans l'entrée …
Vous devez vous identifier pour créer des messages et des sujets.

Taper une commande dans l'entrée au clavier

Bonjour,

Je souhaite créer une commande qui sera soit dans le sélecteur  de cellule, soit une commande dans le menu Tâches de "l'espace de travail " "personnalisé".

Cette commande est :

sélectionner un niveau pour lui attribuer une nouvelle couleur ou nouveau style de trait du genre :

select level 10;co=96 ; change color (Commande qui ne marche pas)

Je vous remercie par avance,

Cordialement,

Dominique

Bonjour Dominique,

Il n'y a, à ma connaissance, pas de moyen de redéfinir les paramètres de symbologie des niveaux via une commande clavier (key-in). Par contre, le VBA peut vous sauver par un petit code très simple :

Sub ModifierNiveau()
Dim strArgs() As String

' Les arguments à fournir seront : le nom du niveau, la couleur, le style, l'épaisseur
strArgs = Split(KeyinArguments, ",")

If UBound(strArgs) <> 3 Then
MsgBox "Nombre d'arguments incorrect !", vbExclamation, "Alerte"
Else
Dim strLevel As String
Dim iCouleur As Integer
Dim strLineStyle As String
Dim iEpaisseur As Integer

strLevel = strArgs(0)
iCouleur = CInt(strArgs(1))
strLineStyle = strArgs(2)
iEpaisseur = CInt(strArgs(3))

Application.ActiveDesignFile.Levels(strLevel).ElementColor = iCouleur
Application.ActiveDesignFile.Levels(strLevel).ElementLineStyle = Application.ActiveDesignFile.LineStyles(strLineStyle)
Application.ActiveDesignFile.Levels(strLevel).ElementLineWeight = iEpaisseur
Application.ActiveDesignFile.Levels.Rewrite
End If

End Sub

Pour utiliser la macro VBA, il suffit ensuite d'entrer la commande suivante :

VBA   RUN   ModifierNiveau   [Nom du niveau],[Couleur],[Style de ligne],[Epaisseur]

Par exemple : VBA RUN ModifierNiveau  Niveau_1, 3,( Border ), 4

J'espère que ceci pourra vous aider !

Philippe


Donnez-nous votre avis !