Ces quelques lignes de code en Visual Basic démontrent comment créer un modèle à partir d’un gabarit (Template).
De plus on démontre comment utiliser la barre de progression ou de dialogue.
Compatible avec PowerDesigner/PowerAMC 16.5
'Exemple de création d'un modèle à partir d'un Gabarit:
Option Explicit
Dim path, project
' Interprête le nom logique %_HOME% dans le nom du répertoire pour un nom physique
' Répertoire PowerDesigner : Resource FilesProject TemplatesFrameworksFEAF ProjectFEAF project.prj
path = EvaluateNamedPath("%_HOME%Fichiers de ressourcesTemplates de projetCadre d'architectureFEAFFEAF.prj")
' Création du modèle "Mon Projet" qui est conservé dans le répertoire "Mon Projet"
Set project = CreateModelFromTemplate(path & "|NAME=Mon Projet|RootDir=c:Mon Projet")
' Désactive le mode batch pour avoir les dialogues de confirmation affichés
InteractiveMode = im_Dialog
Sub DemoProgression(InStatusbar, Affichage)
Dim p
' Création de la barre de progression...
Set p = Application.Progress("Barre de progression...", InStatusbar)
' Plage de l'indicateur de progression et de sa position initiale
p.Position = 0 ' Defaults to 0
p.Stepping = 1 ' Defaults to 10
' Modification des couleurs de progressions.
p.BarColor = vbGreen
p.BackColor = vbRed
' Note : Si nous avons déjà une barre de progression en cours le programme ne sera pas en mesure de démarrer
' Si nous avons sélectionné une barre de progression
If InStatusbar Then
' L'utilisateur peut annuler la progression
p.CanBeCanceled = True
' Si nous avons sélectionné une barre de dialogue
Else
' Indicateur de progression de dialogue prend en charge la mise en forme de texte, l'animation optionnelle et l'annulation
p.TextFormat = "I = %s"
' On sélectionne une animation par défaut en spécifiant "*" à la place d'un nom de fichier AVI.
' Par défaut l'animation est assignée à ":" ce qui signifie aucune animation
p.Animation = "*"
if (Affichage) Then
p.Min = 0 ' Defaults to 0
p.Max = 100 ' Defaults to 1000
else
' On désactive l'affichage de la barre de progression en réduisant la plage à RIEN
' Cela ne fera que désactiver l'affichage de la barre de progression, s'il y a une animation sélectionnée
p.Max = p.Min
End If
' On activer la confirmation de l'annulation et on passe en mode interactif
p.ConfirmMessage = "Voulez-vous arrêter ?"
p.PositiveConfirm = True
End If
' Affichage de l'indicateur de progression
p.Start
Dim i, j, k
For i = 1 To 100 Step 1
p.Step
p.Text = CStr(i)
delai(1)
If p.Canceled Then
p.Stop
Exit Sub
End If
Next
p.Stop
End Sub
DemoProgression False, True ' Demo utilisant une barre de dialogue
DemoProgression False, False ' Demo utilisant une barre de dialogue
Cet appel ne fonctionne pas correctement. Je travaille sur une solution
DemoProgression True, True ' Demo utilisant une barre de progression
Animation par défaut
p.Animation = "*"


