pictogram Auteur: Patrick Biker
Date: 18 mars 2006
Maj : 21 Mars 2015

Des exemples d'utilisation des fonctions du WLangage

Rien de tel qu'un exemple pour comprendre une fonction de WLangage. Dans cette section, vous trouverez des exemples simples.

Des exemples évolués, où la fonction est utilisée en contexte, sont également disponible sur ce site.

Aller à la page des exemples évolués

AnalyseurDebut (en anglais ProfilerStart)

AnalyseurDébut ("Test_ProcédureLancement.wpf")
ProcédureLancement()
AnalyseurFin()


Début de la page

AnalyseurFin (en anglais ProfilerEnd)

AnalyseurDébut("Test_ProcédureLancement.wpf")
ProcédureLancement()
AnalyseurFin ()


Début de la page

AppliControle (en anglais AppliControl)

// Code d'initialisation du projet
AppliContrôle ("C:\MonAppli\FicStop.Txt", FenContrôle)


Début de la page

AutomationParametre (en anglais AutomationParameter)

// Fixe l'indice de départ des tableaux Automation
AutomationParamètre ( apIndiceBaseTableau , 1)
 


Début de la page

Bip (en anglais Beep)

SI HTrouve() = Faux ALORS
  Message("Non trouvé")
  Bip ()
FIN


Début de la page

ChangeGabarit (en anglais ChangeTemplate)

// Utilisation du gabarit "Mer" pour toutes les fenêtres de l'application
ChangeGabarit ( "" , "C:\MonAppli\Mer.WDY" )


Début de la page

ChangeGabarit (en anglais ChangeTemplate)

// Utilisation du gabarit "Emeraude" pour la fenêtre en cours
ChangeGabarit (MaFenêtre..Nom, "Emeraude.WDY")


Début de la page

ChargeWDL (en anglais LoadWDL)

// Code d'initialisation du projet
// La bibliothèque dépend de l'utilisateur
NomBibli, User, Ch sont des chaînes
hWDL est un entier
User = LigneCommande("Utilisateur")
Selon User
   CAS User1 : NomBibli = "USER1.WDL"
  
CAS User2 : NomBibli = "USER2.WDL"
  
CAS User3 : NomBibli = "USER3.WDL"
FIN
hWDL = ChargeWDL (NomBibli)


Début de la page

Compile (en anglais Compile)

// Source : champ dans lequel est saisi le code de procédure
sResultat est une chaîne
sResultatCompile est une chaîne
sResultatCompile = Compile ("Proc_dynamique", Source)
SELON sResultatCompile
  
CAS "" : sResultat = ExécuteTraitement("Proc_dynamique", trtProcédure )
   CAS "ERR" : sResultat = "Compilation impossible. "+ RC +ErreurInfo()
   AUTRE CAS : sResultat = sResultatCompile
FIN
RENVOYER sRésultat


Début de la page

ComposantInfo (en anglais ComponentInfo)

Trace( ComposantInfo (fenPresentation_ex, ciVersion ))


Début de la page

ConstruitVariantAutomation (en anglais BuildAutomationVariant)

oObjet est un objet Automation "ObjetAutomation"
tTableau est un tableau de 5 entiers
// force le passage du tableau par un variant Automation
// plutôt qu'un passage direct du tableau

oObjet>>MaMethode( ConstruitVariantAutomation (tTableau)) 


Début de la page

DechargeWDL (en anglais UnloadWDL)

// Code de fermeture de la première fenêtre du projet
DéchargeWDL (hWnd) // Fermeture de la bibliothèque


Début de la page

DesactiveFAA (en anglais DisableAAF)

// Clic sur le bouton Annuler
// => les valeurs saisies par l'utilisateur ne seront pas sauvées.

DésactiveFaa (MaFenetre, faaSauveValeur )
Ferme()


Début de la page

DesactiveFAA (en anglais DisableAAF)

// Option de menu 'restaure les paramètres par défaut'
SupprimeParamètre()
DésactiveFaa (MaFenetre, faaSauveTailleEtPosition )
DésactiveFaa (MaFenetre, faaSauveValeur )
Utilise(FenetrePrincipale


Début de la page

Dimension (en anglais Dimension)

// Re-dimensionner un tableau (dynamique)
MonTab est un tableau dynamique de 5 par 3 entiers
...
// Re-dimensionner le tableau
Dimension (MonTab, 8, 6)


Début de la page

DonneIdentifiant (en anglais GetIdentifier)

// Ouvrir une fenêtre avec alias
OuvreFille("Alias" + DonneIdentifiant () + " = Fiche")


Début de la page

DonneIdentifiant (en anglais GetIdentifier)

// Ouvrir une page avec alias
GUID est une entier = ConnexionOccurrence() + ...
    DonneIdentifiant () + Maintenant()


Début de la page

EnModeComposant (en anglais InComponentMode)

// Code exécuté depuis le composant ?
SI EnModeComposant ()= Vrai ALORS
   Info("Vous exécutez le composant créé "+ ...
        "à partir de l'application MonProjet")
SINON
   Info("Vous exécutez l'application MonProjet")
FIN


Début de la page

EnModeComposant (en anglais InComponentMode)

// Code exécuté depuis le composant ?
SI EnModeComposant () = Vrai ALORS
   Info("Vous exécutez le composant créé "+ ...
          "à partir du site MonSite")
SINON
   Info("Vous exécutez le site MonSite")
FIN


Début de la page

EnModeJava (en anglais InModeJava)

// Code exécuté en Java ?
SI EnModeJava () = Vrai ALORS
    // Code Java
    // Traitement à effectuer
    ...
SINON
    // Code non Java
    // Traitement à effectuer
    ...
FIN


Début de la page

EnModePHP (en anglais InPHPMode)

// Code exécuté en PHP ?
SI EnModePHP () = Vrai ALORS
    // Code PHP
    // Traitement à effectuer
    ...
SINON
    // Code non PHP
    // Traitement à effectuer
    ...
FIN


Début de la page

EnModePocket (en anglais InPocketMode)

// Code exécuté depuis l'application
// WinDev Mobile ?
SI EnModePocket () = Vrai ALORS
    // Application WinDev Mobile 
    // Traitement à effectuer
    ...
SINON
    // Application WinDev standard, PHP ou  site WebDev
    // Traitement à effectuer
    ...
FIN


Début de la page

EnModeTest (en anglais OnTestMode)

SI EnModeTest () ALORS Trace("Variable NumMenu : " + NumMenu)


Début de la page

EnModeWeb (en anglais InWebMode)

// Mode de lancement ?
SI EnModeWeb () ALORS
  // Traitement lancé depuis le moteur
  // d'exécution de WebDev : appel
  // de la procédure "WebEnvoiePage

  WebEnvoiePage("Info.htm")
SINON
  // Traitement lancé depuis un
  // exécutable WinDev (ou depuis une
  // page PHP) : affichage
  // d'une boîte de dialogue

  Info("Action réalisée")
FIN


Début de la page

ErreurInfo (en anglais ErrorInfo)

// Ouverture du fichier de présentation
nIdFichier est un entier = fOuvre(NomFichier, foLecture )
// Vérification de l'ouverture du fichier
SI nIdFichier = -1 ALORS
   Erreur("Impossible d'ouvrir le fichier : " + NomFichier, ErreurInfo ())
   RENVOYER Faux
FIN


Début de la page

EstNumerique (en anglais IsNumeric)

EstNumérique ("143")    // renvoie Vrai
EstNumérique ("1.67")   // renvoie Vrai
EstNumérique ("ABC")    // renvoie Faux
EstNumérique ("3plus2") // renvoie Vrai
EstNumérique ("7,5")    // renvoie Vrai
EstNumérique ("1D2")    // renvoie Vrai
EstNumérique ("2.5e-2") // renvoie Vrai


Début de la page

Execute (en anglais Execute)

// Exécution du traitement de clic du bouton "Valide"
Exécute
("Valide..Cli")


Début de la page

Execute (en anglais Execute)

// Exécution d'une procédure
Exécute ("Proced1.PRO")


Début de la page

Execute (en anglais Execute)

-- Clic sur Bouton BOUTON1
// Exécution d'une procédure retournant un résultat
Info( Exécute ("Doubler", 2)) // Affiche 4

// Procédure Doubler
Procédure Doubler(X)
Renvoyer 2*X


Début de la page

executeFAA (en anglais ExecuteAAF)

// Clic sur le bouton "Orthographe
ExécuteFAA (Saisie1 , faaCorrectionOrthographique )
 


Début de la page

ExecuteTraitement (en anglais ExecuteProcess)

// Exécute la procédure LitFichier
// en lui passant en paramètre le nom du fichier
ExécuteTraitement (LitFichier, trtProcédure, NomFichier )


Début de la page

ExecuteTraitement (en anglais ExecuteProcess)

// Exécute une procédure locale (test) appartenant
// à une autre fenêtre / page ouverte (menu)
ExécuteTraitement (Menu.Test, trtProcédure )


Début de la page

ExecuteTraitement (en anglais ExecuteProcess)

// Exécute le traitement d'initialisation de la fenêtre en cours
ExécuteTraitement (MaFenêtre, trtINIT )


Début de la page

ExecuteTraitement (en anglais ExecuteProcess)

// Exécute le traitement d'initialisation de la page en cours
ExécuteTraitement (MaPage..Nom, trtINIT )


Début de la page

ExecuteTraitement (en anglais ExecuteProcess)

// Exécute le traitement de l'option de menu FichierSauve
ExécuteTraitement (FichierSauve, trtOptionMenu )


Début de la page

FacteurGrandePolice (en anglais LargeFontFactor)

// Agrandissement du champ "NomClient"
// selon le facteur d'agrandissement de la fenêtre
NomClient..X = NomClient..X * FacteurFrandePolice ()
NomClient..Largeur = NomClient..Largeur * FacteurFrandePolice ()


Début de la page

FichierAide (en anglais HelpFile)

// Utiliser le fichier d'aide "D:\WinDev\Aide\Aide.chm"
// pour l'aide contextuelle de la fenêtre "Fen1"

FichierAide
(FEN1, "D:\WinDev\Aide\Aide.chm")


Début de la page

FichierAide (en anglais HelpFile)

// Utiliser le fichier d'aide "Aide.hlp"
// pour l'aide contextuelle de la fenêtre en cours

FichierAide ("", "Aide.hlp")


Début de la page

FichierAide (en anglais HelpFile)

// Connaître le fichier d'aide utilisé
// pour l'aide contextuelle de la fenêtre en cours

ResFicAide = FichierAide ("")


Début de la page

FinProgramme (en anglais EndProgram)

// Vérification du mot de passe
SI MotDePasse <> "Rantanplan" ALORS
   FinProgramme ("Mot de passe incorrect")
FIN


Début de la page

FinProgramme (en anglais EndProgram)

// Vérification du mot de passe
SI MotDePasse <> "Rantanplan" ALORS
   PageAffiche("Fin")
   FinProgramme ()
FIN


Début de la page

Hasard (en anglais Random)

// Récupération d'un réel compris entre 0 et 1
ResHasard = Hasard ()
// Récupération d'un entier compris entre 1 et 33
ResHasard = Hasard (33)
// Récupération d'un entier compris entre 7 et 21
ResHasard = Hasard (7, 21)


Début de la page

Hasp (en anglais Hasp)

// Test de lecture de la cellule 10 de la clé :
// la numérotation commence à 0
NumFonc = 3         // Fonction READ_WORD
Entier1 = 10
Hasp(NumFonc, SeedCode, Lpt, Passe1, Passe2, ...
               &Entier1 , & Entier2, & Entier3, & Entier4)
SI Entier3 = 0 ALORS
  
Info("Contenu adresse mémoire 10 de la clé>" + Entier2+ "<")
SINON
   Info("Erreur : code retour = " +Entier3)
FIN


Début de la page

IniEcrit (en anglais INIWrite)

// Écriture dans la section [Exemples WD]
IniEcrit "Exemples WD" "Nom3" "WDExemple" "C:\Temp\ExemplesLST.INI"


Début de la page

IniEcrit (en anglais INIWrite)

// Mémorisation du produit sélectionné dans le .ini
INIEcrit ("USER", "LastProd", NumériqueVersChaine(ListeSelect("ListeProduit")), ...
                  fRepEnCours() + "\Port.ini")


Début de la page

IniLit (en anglais INIRead)

// Écriture dans la section [Exemples WD]
IniLit "Exemples WD" "Nom2" "" "C:\Temp\ExemplesLST.INI"


Début de la page

IniLit (en anglais INIRead)

// Choix par défaut lu dans le .ini
nProduit est un entier = Val( INILit ("USER", "LastProd", "", fRepExe() + "\Port.ini"))
SI nProduit > 0 ALORS ListeSelectPlus("ListeProduit", nProduit)


Début de la page

InitHasard (en anglais InitRandom)

// Initialisation du générateur de nombres aléatoires
InitHasard ()


Début de la page

LigneCommande (en anglais CommandLine)

// On appelle l'exécutable avec la ligne de commande suivante :
// projet.exe param1 /opt1=param2 "param31 param32" -opt2="param41 param42"
LigneCommande ()   // Renvoie la totalité de la ligne de commande
LigneCommande (1)   // Renvoie 'param1'
LigneCommande (2)   // Renvoie '/opt1 = param2'
LigneCommande (3)   // Renvoie 'param31 param32'
LigneCommande (4)   // Renvoie '-opt2 = "param41 param42"'
LigneCommande (5)   // Renvoie ''
LigneCommande ("opt1"// Renvoie 'param2'
LigneCommande ("opt2"// Renvoie 'param41 param42'
LigneCommande ("opt3"// Renvoie ''


Début de la page

ModeExecution (en anglais ExecutionMode)

// Mode test ?
SI EnModeTest()ALORS
  ModeExécution ( ModeNormal )
SINON
  // On applique le mode de comportement de WinDev 5.5 pour éviter
  // l'affichage de certaines erreurs
  ModeExécution ( ModePermissif )
FIN


Début de la page

NumHelp (en anglais NumHelp)

// Ouverture de l'aide MonAide.HLP sur la page
// ayant pour numéro de contexte NumHelp(NomChampEnCours)
// NomChampEnCours est une variable contenant le nom du champ en cours
WHelp("MonAide.hlp", NumHelp (NomChampEnCours))


Début de la page

SelectCouleur (en anglais SelectColor)

Valeur est un entier = RVB(10, 17, 69)
Résultat est un booléen
Info("Couleur de départ : " + Valeur)
Résultat = SelectCouleur (Valeur, scInit )
Info("Couleur d'arrivée : " + Valeur)


Début de la page

Son (en anglais Sound)

// Joue le Son contenu dans le fichier "TADA.WAV"
Son ("Tada.wav")
// Joue en bloquant sur carte sonore
Son ("tada.wav", sonBloque )
// Joue en bouclant sur carte sonore
Son ("C:\MSOFFICE\Sons\Voiture.wav", sonBoucle + 1)


Début de la page

Son (en anglais Sound)

// Joue le Son contenu dans le fichier "TADA.WAV"
Son ("Tada.wav")
// Joue en bloquant sur carte sonore
Son ("tada.wav", sonBloque )
// Joue en bouclant sur carte sonore
Son ("\MSOFFICE\Sons\Voiture.wav", sonBoucle + 1)


Début de la page

Trace (en anglais Trace)

// Affichage d'informations dans le fenêtre de trace
Trace ("Résultat du calcul : " + ResCalcul)


Début de la page

TraceDebut (en anglais StartTrace)

// Ouvre la fenêtre de Trace
TraceDébut ()
...
// Ecrit dans la fenêtre de Trace
Trace("Résultat du calcul : " +ResCalcul )


Début de la page

TraceDebut (en anglais StartTrace)

// Désactiver les appels à la fonction Trace
TraceDébut ( trDésactive )
...
Trace("Résultat du calcul : " +ResCalcul ) // Fonction Trace sans effet


Début de la page

TraceDebut (en anglais StartTrace)

// Enregistre les informations contenues dans
// la fenêtre de Trace dans le fichier "C:\Trace\MonFichier.txt"

TraceDébut ( trFichier , "C:\Trace\MonFichier.txt")

...
Trace("Résultat du calcul : " +ResCalcul )
// Aucune fenêtre de Trace n'est affichée
// Cette information sera enregistrée dans le
// fichier "C:\Trace\MonFichier.txt"


Début de la page

TraceFin (en anglais EndTrace)

// Fermeture de le fenêtre de trace
TraceFin ()


Début de la page

TypeVar (en anglais TypeVar)

Procédure MaProcédure(Paramètre)
TypeVar (Paramètre)


Début de la page

TypeVariable (en anglais DataType)

SI TypeVariable (Var1)<>12 ALORS
   Info("Var1 n'est pas de type chaîne de caractères")
SINON
   Info("Var1 est de type chaîne de caractères")
FIN


Début de la page

VariantConvertit (en anglais VariantConvert)

Procédure MaProcédure(Paramètre)
// On récupère le paramètre dans un variant
vVariant est un variant = Paramètre
// On convertit le variant en chaîne
VariantConvertit (vVariant, wlChaîne )


Début de la page

VersionWinDev (en anglais WinDevVersion)

Info("Version WinDev : " + VersionWindev ())


Début de la page

VersionWinDev (en anglais WinDevVersion)

Info("Version WebDev : " + VersionWindev ())


Début de la page

VersionWinDev (en anglais WinDevVersion)

Info("Version Java : " + VersionWindev ())


Début de la page

WHelp (en anglais WHelp)

// Ouverture de NOTEPAD.HLP sur la page de Couper/Coller
WHelp ("C:\Windows\NotePad.hlp", "COLLAGE DE TEXTE")


Début de la page

WHelp (en anglais WHelp)

// Ouverture du "NotePad.hlp" sur la page ayant 35 pour numéro
// de contexte ou sur l'index si le numéro n'existe pas

WHelp ("C:\Windows\NotePad.hlp", 35)


Début de la page