PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Présentation
  • Champ d'une fenêtre, d'un état ou d'une page statique ou dynamique
  • Utilisation dans une page
  • Créer un champ HTML
  • Créer un champ HTML dans une fenêtre
  • Créer un champ HTML dans une page
  • Créer un champ HTML dans un état
  • Créer un champ HTML dans un état
  • Champ d'une fenêtre : Caractéristiques
  • Options de l'onglet "Général"
  • Conditions d'utilisation
  • Option "Autoriser le zoom"
  • Option "Autoriser le zoom"
  • Incompatibilité entre l'ActiveX IE (et oAuth2) et l'utilisation d'assemblage .NET
  • Champ d'une page : Caractéristiques
  • Champ d'une page : largeur et hauteur variable
  • Champ d'un état : Caractéristiques
  • Fenêtre de description et programmation
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Présentation

Champ d'une fenêtre, d'un état ou d'une page statique ou dynamique

Versions 16 et supérieures
Android Les champs HTML sont désormais disponibles pour les applications Android.
Universal Windows 10 App Les champs HTML sont disponibles pour les applications Windows Phone.
Nouveauté 16
Android Les champs HTML sont désormais disponibles pour les applications Android.
Universal Windows 10 App Les champs HTML sont disponibles pour les applications Windows Phone.
Android Les champs HTML sont désormais disponibles pour les applications Android.
Universal Windows 10 App Les champs HTML sont disponibles pour les applications Windows Phone.
Versions 17 et supérieures
iPhone/iPad Les champs HTML sont désormais disponibles pour les applications iPhone/iPad.
Nouveauté 17
iPhone/iPad Les champs HTML sont désormais disponibles pour les applications iPhone/iPad.
iPhone/iPad Les champs HTML sont désormais disponibles pour les applications iPhone/iPad.
Versions 18 et supérieures
Universal Windows 10 App Les champs HTML sont désormais disponibles pour les applications en mode Windows Store apps.
Nouveauté 18
Universal Windows 10 App Les champs HTML sont désormais disponibles pour les applications en mode Windows Store apps.
Universal Windows 10 App Les champs HTML sont désormais disponibles pour les applications en mode Windows Store apps.
Le champ HTML peut être utilisé :
  • WINDEVAndroidiPhone/iPadUniversal Windows 10 App Dans une fenêtre.
    Le champ HTML d'une fenêtre permet d'afficher une page HTML.
  • WEBDEV - Code ServeurPHP Dans une page.
    Le champ HTML d'une page permet d'afficher ou d'utiliser du code HTML ou JavaScript. Ce code peut par exemple correspondre à des scripts HTML. Le champ HTML ne permet pas d'afficher une page HTML ou un site HTML. Ce champ permet juste d'afficher du code HTML.
  • Versions 18 et supérieures
    WINDEVWEBDEV - Code ServeurEtats et RequêtesWindowsWindows Mobile Dans un état.
    Le champ HTML d'un état permet d'imprimer un code HTML ou le contenu d'une page locale.
    Nouveauté 18
    WINDEVWEBDEV - Code ServeurEtats et RequêtesWindowsWindows Mobile Dans un état.
    Le champ HTML d'un état permet d'imprimer un code HTML ou le contenu d'une page locale.
    WINDEVWEBDEV - Code ServeurEtats et RequêtesWindowsWindows Mobile Dans un état.
    Le champ HTML d'un état permet d'imprimer un code HTML ou le contenu d'une page locale.
WEBDEV - Code ServeurPHP

Utilisation dans une page

Le champ HTML d'une page permet d'afficher ou d'utiliser du code HTML ou JavaScript. Ce code peut par exemple correspondre à des scripts HTML. Le champ HTML ne permet pas d'afficher une page HTML ou un site HTML. Ce champ permet juste d'afficher du code HTML.
Un champ HTML est programmable en code serveur uniquement si le champ est défini comme étant "Dynamique". Le champ HTML ne peut pas être associé à une rubrique d'un fichier de données.
Attention :
  • Lorsque le champ est défini comme étant dynamique, seule une affectation par programmation est possible.
  • Par défaut, le champ n'a pas l'option "Autoriser l'exécution des scripts" (onglet "Général" de la description du champ).
Si la fenêtre affichée dans le champ HTML contient des scripts, et si l'utilisateur clique sur des zones actives dans ce champ HTML (formulaires, onglet...), l'action demandée provoque l'ouverture du navigateur par défaut et affiche l'URL du champ HTML, afin de permettre à l'utilisateur d'exécuter ces scripts.
Pour autoriser la navigation de l'utilisateur au sein du champ HTML, cochez l'option "Autoriser l'exécution des scripts".
Créer un champ HTML
Pour créer un champ de type HTML :
  1. Sous l'éditeur de fenêtres ou de pages, cliquez sur l'icône Icône HTML (ou utilisez l'option de menu "Insertion .. Champ .. Champ Html").
  2. Cliquez dans la fenêtre ou dans la page à la position où le champ doit être créé. Le champ apparaît en création.
Pour afficher les caractéristiques du champ, sélectionnez l'option "Description" dans le menu contextuel du champ.
WINDEVAndroidiPhone/iPadUniversal Windows 10 App

Créer un champ HTML dans une fenêtre

Pour créer un champ de type HTML dans une fenêtre :
  1. Sous le volet "Création", dans le groupe "Autres champs", cliquez sur "HTML".
  2. Cliquez dans la fenêtre à la position où le champ doit être créé. Le champ apparaît en création.
Pour afficher les caractéristiques du champ, sélectionnez l'option "Description" dans le menu contextuel du champ.
WEBDEV - Code ServeurPHP

Créer un champ HTML dans une page

Pour créer un champ de type HTML dans une page :
  1. Sous le volet "Création", dans le groupe "Intégration", cliquez sur "HTML".
  2. Cliquez dans la page à la position où le champ doit être créé. Le champ apparaît en création.
Pour afficher les caractéristiques du champ, sélectionnez l'option "Description" dans le menu contextuel du champ.
Versions 18 et supérieures
WINDEVWEBDEV - Code ServeurEtats et RequêtesWindowsWindows Mobile

Créer un champ HTML dans un état

Pour créer un champ de type HTML dans un état :
  1. Sous le volet "Création", dans le groupe "Champs usuels", cliquez sur "HTML".
  2. Cliquez dans l'état à la position où le champ doit être créé. Le champ apparaît en création.
Pour afficher les caractéristiques du champ, sélectionnez l'option "Description" dans le menu contextuel du champ.
Nouveauté 18
WINDEVWEBDEV - Code ServeurEtats et RequêtesWindowsWindows Mobile

Créer un champ HTML dans un état

Pour créer un champ de type HTML dans un état :
  1. Sous le volet "Création", dans le groupe "Champs usuels", cliquez sur "HTML".
  2. Cliquez dans l'état à la position où le champ doit être créé. Le champ apparaît en création.
Pour afficher les caractéristiques du champ, sélectionnez l'option "Description" dans le menu contextuel du champ.
WINDEVWEBDEV - Code ServeurEtats et RequêtesWindowsWindows Mobile

Créer un champ HTML dans un état

Pour créer un champ de type HTML dans un état :
  1. Sous le volet "Création", dans le groupe "Champs usuels", cliquez sur "HTML".
  2. Cliquez dans l'état à la position où le champ doit être créé. Le champ apparaît en création.
Pour afficher les caractéristiques du champ, sélectionnez l'option "Description" dans le menu contextuel du champ.
WINDEVWEBDEV - Code ServeurEtats et RequêtesWindowsWindows Mobile

Créer un champ HTML dans un état

Pour créer un champ de type HTML dans un état :
  1. Sous le volet "Création", dans le groupe "Texte", cliquez sur "HTML".
  2. Cliquez dans l'état à la position où le champ doit être créé. Le champ apparaît en création.
Pour afficher les caractéristiques du champ, sélectionnez l'option "Description" dans le menu contextuel du champ.
Remarque : A partir de la version 22, le champ HTML d'un état correspond à un champ Libellé de type HTML.
WINDEVAndroidiPhone/iPadUniversal Windows 10 App
Champ d'une fenêtre : Caractéristiques

Options de l'onglet "Général"

L'onglet "Général" de la fenêtre de description du champ permet :
  • de saisir directement du code HTML ou l'adresse de la page HTML à afficher.
    Remarque : Si du code HTML est saisi, ce code doit obligatoirement être compris entre les balises <HTML> et </HTML>.
  • d'autoriser l'exécution des scripts. Cette option permet d'autoriser l'exécution des scripts appelés depuis le code HTML du champ.
    Versions 23 et supérieures
    Si cette option est cochée, il est également possible :
    • d'exécuter du code Javascript dans le contexte de la page Web affichée par le champ HTML. Il suffit pour cela d'utiliser la fonction ExécuteJS.
    • d'autoriser l'exécution de procédures WLangage depuis le code Javascript via l'option "Autoriser l'appel de WLangage depuis le code HTML (fonction JavaScript WL.Execute)".
      Si cette option est sélectionnée, dans le code du HTML du champ, il suffit d'utiliser WL.Execute pour exécuter une procédure WLangage. La syntaxe à utiliser est la suivante :
      WL.Execute(<Nom procédure WLangage>, <Paramètres>)
      où :
      • <Nom procédure WLangage> correspond au nom de la procédure à exécuter.
      • <Paramètres> correspond à une chaîne de caractères à passer à la procédure.
      Exemple :
      • Procédure WLangage
        PROCÉDURE ProcFromJS(t)
        ToastAffiche("Appelé depuis le JS : " + t)
      • Code du champ HTML :
        s est chaîne = [
        <html>
        <head>
        <title> Un exemple simple
        </title>
        <script>
        function myFunction()
        {
        WL.Execute("ProcFromJS","titaa");
        }
        </script>
        </head>
        <body>
        <h1> Voici une page HTML </h1>
        <p id="demo">Un paragraphe</p>
        <button type="button" onclick="myFunction()">Essayer</button>
        </body>
        </html>
        ]
        HTM_SansNom1 = s
    Nouveauté 23
    Si cette option est cochée, il est également possible :
    • d'exécuter du code Javascript dans le contexte de la page Web affichée par le champ HTML. Il suffit pour cela d'utiliser la fonction ExécuteJS.
    • d'autoriser l'exécution de procédures WLangage depuis le code Javascript via l'option "Autoriser l'appel de WLangage depuis le code HTML (fonction JavaScript WL.Execute)".
      Si cette option est sélectionnée, dans le code du HTML du champ, il suffit d'utiliser WL.Execute pour exécuter une procédure WLangage. La syntaxe à utiliser est la suivante :
      WL.Execute(<Nom procédure WLangage>, <Paramètres>)
      où :
      • <Nom procédure WLangage> correspond au nom de la procédure à exécuter.
      • <Paramètres> correspond à une chaîne de caractères à passer à la procédure.
      Exemple :
      • Procédure WLangage
        PROCÉDURE ProcFromJS(t)
        ToastAffiche("Appelé depuis le JS : " + t)
      • Code du champ HTML :
        s est chaîne = [
        <html>
        <head>
        <title> Un exemple simple
        </title>
        <script>
        function myFunction()
        {
        WL.Execute("ProcFromJS","titaa");
        }
        </script>
        </head>
        <body>
        <h1> Voici une page HTML </h1>
        <p id="demo">Un paragraphe</p>
        <button type="button" onclick="myFunction()">Essayer</button>
        </body>
        </html>
        ]
        HTM_SansNom1 = s
    Si cette option est cochée, il est également possible :
    • d'exécuter du code Javascript dans le contexte de la page Web affichée par le champ HTML. Il suffit pour cela d'utiliser la fonction ExécuteJS.
    • d'autoriser l'exécution de procédures WLangage depuis le code Javascript via l'option "Autoriser l'appel de WLangage depuis le code HTML (fonction JavaScript WL.Execute)".
      Si cette option est sélectionnée, dans le code du HTML du champ, il suffit d'utiliser WL.Execute pour exécuter une procédure WLangage. La syntaxe à utiliser est la suivante :
      WL.Execute(<Nom procédure WLangage>, <Paramètres>)
      où :
      • <Nom procédure WLangage> correspond au nom de la procédure à exécuter.
      • <Paramètres> correspond à une chaîne de caractères à passer à la procédure.
      Exemple :
      • Procédure WLangage
        PROCÉDURE ProcFromJS(t)
        ToastAffiche("Appelé depuis le JS : " + t)
      • Code du champ HTML :
        s est chaîne = [
        <html>
        <head>
        <title> Un exemple simple
        </title>
        <script>
        function myFunction()
        {
        WL.Execute("ProcFromJS","titaa");
        }
        </script>
        </head>
        <body>
        <h1> Voici une page HTML </h1>
        <p id="demo">Un paragraphe</p>
        <button type="button" onclick="myFunction()">Essayer</button>
        </body>
        </html>
        ]
        HTM_SansNom1 = s

Conditions d'utilisation

Attention : Pour utiliser un champ HTML :
  • WINDEV dans une application WINDEV, il est nécessaire d'installer Internet Explorer 4 ou supérieure (version 11 conseillée) sur le poste de développement et sur le poste de déploiement de l'application. Le champ HTML de WINDEV est en mode Internet Explorer 7.
    Pour afficher des pages WEBDEV dans ce champ, les pages WEBDEV doivent être générées en mode HTML + Edge.
  • AndroidiPhone/iPadUniversal Windows 10 App dans une application en mode simulateur, il est nécessaire d'installer Internet Explorer 4 ou supérieure (version 11 conseillée) sur le poste de développement.
  • Versions 21 et supérieures
    iPhone/iPad dans une application iOS 9.0 (et supérieur), il est nécessaire de respecter les options de sécurité. Par défaut, le champ HTML permet d'accéder uniquement aux sites utilisant une connexion HTTPS respectant les préconisations de la société Apple. Pour accéder à d'autres sites (HTTP par exemple), il est nécessaire soit de fournir la liste des domaines correspondants, soit de désactiver la sécurité pour tous les domaines. Ces manipulations sont faites dans l'assistant de création d'une application iOS. Pour plus de détails, consultez Générer une application iOS.
    Nouveauté 21
    iPhone/iPad dans une application iOS 9.0 (et supérieur), il est nécessaire de respecter les options de sécurité. Par défaut, le champ HTML permet d'accéder uniquement aux sites utilisant une connexion HTTPS respectant les préconisations de la société Apple. Pour accéder à d'autres sites (HTTP par exemple), il est nécessaire soit de fournir la liste des domaines correspondants, soit de désactiver la sécurité pour tous les domaines. Ces manipulations sont faites dans l'assistant de création d'une application iOS. Pour plus de détails, consultez Générer une application iOS.
    iPhone/iPad dans une application iOS 9.0 (et supérieur), il est nécessaire de respecter les options de sécurité. Par défaut, le champ HTML permet d'accéder uniquement aux sites utilisant une connexion HTTPS respectant les préconisations de la société Apple. Pour accéder à d'autres sites (HTTP par exemple), il est nécessaire soit de fournir la liste des domaines correspondants, soit de désactiver la sécurité pour tous les domaines. Ces manipulations sont faites dans l'assistant de création d'une application iOS. Pour plus de détails, consultez Générer une application iOS.
Versions 17 et supérieures
Android

Option "Autoriser le zoom"

L'option "Autoriser le zoom" (onglet "IHM" de la fenêtre de description du champ) permet à l'utilisateur d'utiliser les options de zoom dans le champ HTML.
Nouveauté 17
Android

Option "Autoriser le zoom"

L'option "Autoriser le zoom" (onglet "IHM" de la fenêtre de description du champ) permet à l'utilisateur d'utiliser les options de zoom dans le champ HTML.
Android

Option "Autoriser le zoom"

L'option "Autoriser le zoom" (onglet "IHM" de la fenêtre de description du champ) permet à l'utilisateur d'utiliser les options de zoom dans le champ HTML.
AndroidiPhone/iPad

Option "Autoriser le zoom"

L'option "Autoriser le zoom" (onglet "IHM" de la fenêtre de description du champ) :
  • permet à l'utilisateur de modifier le zoom en écartant/resserrant les doigts.
  • Android affiche des boutons de zoom.
Android Pour jouer des vidéos HTML 5 dans un champ HTML :
  1. Cochez l'option "Autoriser l'exécution des scripts" (onglet "Général" de la fenêtre de description du champ).
  2. Activez l'accélération matériel sur la fenêtre. Pour cela, il faut éditer le manifeste de l'application.
    • Dans l'assistant de génération, affichez l'étape "Configuration".
    • Cliquez sur "Configuration avancée".
    • Cliquer sur "Editer le manifeste".
    • Déroulez le noeud "application".
    • Sélectionnez le noeud "activity" correspondant à la fenêtre contenant le champ HTML.
    • Ajoutez un attribut à ce noeud en lui donnant comme nom "android:hardwareAccelerated" et comme valeur "true".
    • Validez les modifications
    • Terminez l'assistant.
WINDEV

Incompatibilité entre l'ActiveX IE (et oAuth2) et l'utilisation d'assemblage .NET

Lorsque vous utilisez un champ HTML dans WINDEV, ce champ utilise l'ActiveX système "Navigateur Web Microsoft". Cet ActiveX est également utilisé par WINDEV pour toutes les authentifications OAuth2 (Facebook, Twitter, Google, etc) qui demandent une validation pour la connexion via du code HTML.
Si dans un même projet vous utilisez un champ HTML (ou une authentification OAuth2) et un assemblage ".Net", vous risquez de rencontrer une incompatibilité entre les couches .NET de Microsoft et l'ActiveX.
Il existe une API qui permet de gérer cette cohabitation. Pour cela vous devez utiliser la ligne de code suivante dans le code d'initialisation du projet ou dans le code d'initialisation de classes ou de procédure globale si l'initialisation de l'objet ".Net" est faite dans la classe ou la collection de procédure :
// Permet de gérer la cohabitation de l'ActiveX IE et de .NET
API("OLE32", "CoInitializeEx", Null, 2)
WEBDEV - Code ServeurPHP
Champ d'une page : Caractéristiques

Champ d'une page : largeur et hauteur variable

Par défaut, les dimensions du champ HTML sont fixées sous l'éditeur. Si le contenu HTML du champ est plus important, le contenu est tronqué.
Pour modifier ce fonctionnement, cochez les options "Largeur variable" et "Hauteur variable" (onglet "Détail" de la fenêtre de description). Dans ce cas, les dimensions du champ HTML en exécution s'adapteront au contenu du champ, et les champs placés à côté ou en dessous seront décalés.
WINDEVWEBDEV - Code ServeurEtats et RequêtesWindowsWindows Mobile
Champ d'un état : Caractéristiques
Versions 18 et supérieures

Fenêtre de description et programmation

Dans la fenêtre de description du champ, il est possible de saisir directement du texte dans l'onglet "Général" du champ. Ce texte va automatiquement être converti en HTML.
Le champ HTML permet d'afficher par exemple :
  • le contenu d'un fichier HTML local.
  • le contenu HTML d'une rubrique.
Il est possible d'initialiser par programmation le champ HTML en lui affectant :
  • directement un code HTML. Par exemple :
    HTM_Code = "<b>Hello</b>"
  • le chemin d'un fichier HTML local.
    HTM_Code = fRepExe() + "\MonFicHTML.htm"
Remarques :
  • Les images au format PNG et SVG contenues dans le HTML ne sont pas gérées.
  • Si la feuille de styles CSS correspond à un fichier externe, elle n'est pas prise en compte.
  • Tous les fichiers externes à rechercher sur Internet ne sont pas pris en compte.
  • Les codes Javascript ne sont pas exécutés.
Nouveauté 18

Fenêtre de description et programmation

Dans la fenêtre de description du champ, il est possible de saisir directement du texte dans l'onglet "Général" du champ. Ce texte va automatiquement être converti en HTML.
Le champ HTML permet d'afficher par exemple :
  • le contenu d'un fichier HTML local.
  • le contenu HTML d'une rubrique.
Il est possible d'initialiser par programmation le champ HTML en lui affectant :
  • directement un code HTML. Par exemple :
    HTM_Code = "<b>Hello</b>"
  • le chemin d'un fichier HTML local.
    HTM_Code = fRepExe() + "\MonFicHTML.htm"
Remarques :
  • Les images au format PNG et SVG contenues dans le HTML ne sont pas gérées.
  • Si la feuille de styles CSS correspond à un fichier externe, elle n'est pas prise en compte.
  • Tous les fichiers externes à rechercher sur Internet ne sont pas pris en compte.
  • Les codes Javascript ne sont pas exécutés.

Fenêtre de description et programmation

Dans la fenêtre de description du champ, il est possible de saisir directement du texte dans l'onglet "Général" du champ. Ce texte va automatiquement être converti en HTML.
Le champ HTML permet d'afficher par exemple :
  • le contenu d'un fichier HTML local.
  • le contenu HTML d'une rubrique.
Il est possible d'initialiser par programmation le champ HTML en lui affectant :
  • directement un code HTML. Par exemple :
    HTM_Code = "<b>Hello</b>"
  • le chemin d'un fichier HTML local.
    HTM_Code = fRepExe() + "\MonFicHTML.htm"
Remarques :
  • Les images au format PNG et SVG contenues dans le HTML ne sont pas gérées.
  • Si la feuille de styles CSS correspond à un fichier externe, elle n'est pas prise en compte.
  • Tous les fichiers externes à rechercher sur Internet ne sont pas pris en compte.
  • Les codes Javascript ne sont pas exécutés.
Liste des exemples associés :
Le champ HTML Exemples unitaires (WINDEV) : Le champ HTML
[ + ] Utilisation d'un champ HTML
Propriété ClasseHTML Exemples unitaires (WEBDEV) : Propriété ClasseHTML
[ + ] La propriété ..ClasseHTML permet de lire et de modifier la valeur de l'attribut HTML "class" du champ.
La valeur de l'attribut HTML "class" permet, entre autres, de sélectionner les styles CSS appliqués sur le champ.
WM Dialogue HTML Exemples multiplateforme (WINDEV Mobile) : WM Dialogue HTML
[ + ] Cet exemple vous montre comment dialoguer avec un champ HTML.
Il utilise la fonction WLangage "ExecuteJS" et la fonction Javascript "WL.Execute".
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Affectation adresse par programmation sur Android
Contrairement à IOS, il est nécessaire sous Android de préfixer le chemin "file://" sinon "http://" est ajouté automatiquement devant le chemin.

Ce qui donne donc pour mon exemple : "file:///data/data/com.masociete.application/files/html/index.html" (triple "/")
Nicolas COMPAIN
01 sep. 2016