IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Faire une interface en langue arabe avec WinDev

Date de publication : 25 avril 2009 , Date de mise à jour : 25 avril 2009

Par Emmanuel Lecoester
 


               Version PDF (Miroir)   Version hors-ligne (Miroir)

0. Vérifier et installer la langue Arabe pour Windows
I. Première fenêtre dans WinDev
II. Gérer l'arabe dans WinDev
II-A. Afficher en arabe
II-B. Afficher en droite à gauche
II-B-1. Méthode disponible en WinDev 14
II-B-2. Pour les anciennes versions de WinDev
II-C. Un test d'affectation ?
II-D. Le stockage dans HyperFile
III. Les ressources PC-Soft
III-A. Exemple de la LST n°66 : WD International
III-B. Exemple de la LST n°70 : WD Alphabet Arabe
III-C. Exemple de la LST n°73 : WD ClavierVirtuel Arabe


0. Vérifier et installer la langue Arabe pour Windows

Si comme moi vous n'avais jamais eu besoin d'installer la langue arabe sur votre poste, ce chapitre vous aidera à installer la langue Arabe (Tunisie) avant de poursuivre le tutoriel. Pour les autres, vous pouvez passer au chapitre deux.

  • Dans le menu « Démarrer », cliquer sur « Panneau de configuration »
  • Choisir « Option régionales et linguistiques »
  • Cliquer sur « Langues »
  • Cocher la case « Installer les fichiers pour les scripts complexes et s'écrivant de droite à gauche »
  • Insérer le CD Windows et attendre
  • Windows propose de redémarrer. Ôter le CD et accepter le redémarrage
  • Après le redémarrage, retourner dans le menu « Démarrer » et choisir à nouveau « Panneau de configuration »
  • Dans « Options régionales et linguistiques » : « Langues » « Détails » choisir langue ARABE (Tunisie)
  • Redémarrer
En bas à droite, sur la barre des tâches, l'icône langue est maintenant disponible et il est possible de passer de l'arabe (image) au français (image) et vice-versa.

Petite astuce pour la suite : affichez le clavier virtuel pour taper votre lettre arabe sur votre clavier standard. Pour ce faire, Démarrer/accessoires/accessibilité/Clavier visuel.

Vous devriez avoir sur votre écran :

image
en langue française et

image
en langue arabe.


I. Première fenêtre dans WinDev

Créer une simple fenêtre avec deux champs de saisie et un bouton de ce type :

image
Afin de tous avoir le même code, je vous donne ci-dessous les différents noms des champs de la fenêtre :

image
Faites un GO du projet

Remarque : Vous remarquerez que dans la barre de langue la langue française (FR) reste sélectionnée et le clavier virtuel reste en Français.


II. Gérer l'arabe dans WinDev


II-A. Afficher en arabe

Insérer le code suivant dans le code d'initialisation du projet
// Passer la langue d'affichage de
// l'application en arabe
Nation(19)
// Passer les polices en arabe
ChangeAlphabet( alphabetArabe )
// Change le clavier
ChangeClavier ( langueArabe )
Faites un GO du projet

Plusieurs choses changent : la langue passe en image et le clavier virtuel passe en arabe.

Il nous reste maintenant à écrire de droite à gauche !


II-B. Afficher en droite à gauche


II-B-1. Méthode disponible en WinDev 14

Une seule ligne suffit !
SAI_Saisie1..SensEcriture = seDroiteAGauche

II-B-2. Pour les anciennes versions de WinDev

Créer la procédure globale suivante :
PROCEDURE InverseObjet(pObjet)
Var1,Var2 est entier
SI Nation()=19 ALORS
Var1=API("User32","GetWindowLongA",Handle(pObjet),-20)
Var2=OUBinaire(Var1,4194304)
Var1=API("User32","SetWindowLongA",Handle(pObjet),-20,Var2)
SINON
Var1=API("User32","GetWindowLongA",Handle(pObjet),-20)
Var2=ETBinaire(Var1,4194304)
Var1=API("User32","SetWindowLongA",Handle(pObjet),-20,Var2)
FIN
Dans le code d'initialisation du champ de saisie ajouter tout simplement le code :
InverseObjet(MoiMême)

II-C. Un test d'affectation ?

Dans le code du bouton ajouter le code suivant :
SAI_Résultat=SAI_Saisie1

En tapant « Bonjour » dans le champ de Saisie et en appuyant sur le bouton nous obtenons

image

L'affectation fonctionne donc !


II-D. Le stockage dans HyperFile

Nous avons créé un simple fichier HF Classic dans une simple analyse.

image

Nous allons maintenant l'exploiter.


Revenons au code du bouton de notre fenêtre :
SAI_Résultat=SAI_Saisie1

Modifions le en :
HRAZ(Arabe)
Arabe.libelle=SAI_Saisie1
HAjoute(Arabe)

HRAZ(Arabe)

HLitPremier(Arabe)
SAI_Résultat=Arabe.libelle
Nous allons faire le test avec les mots suivants : image


Au second test nous obtenons après appui sur le bouton :

image

Hyperfile sait donc bien gérer l'arabe !


Bémol : les données ne sont pas modifiables sous WDMAP en langue Arabe mais en code ANSI.


III. Les ressources PC-Soft

Sur la page de recherche de ressources PC-Soft (http://www.webdev.info/publicationSt_WEB/FR/recherche.awp?RECH=arabe), Nous pouvons retrouver 3 ressources très intéressantes. Prenez contact avec l'éditeur pour comman,der une de ces LST sur cette page http://www.pcsoft.fr/lst/bdc-old-lst.htm


III-A. Exemple de la LST n°66 : WD International

Cet exemple montre comment développer une application multilingue avec une langue orientale.

Cette application peut être exécutée en Français et en Arabe.

La procédure "InverseSensFenêtre" de la collection de procédure "CollectionLangue" permet de changer le sens d'écriture de l'application.

Les champs sont ainsi inversés, les ancrages sont modifiés.

Pour visualiser correctement l'application en langue Arabe, il est nécessaire d'installer la langue Arabe dans Windows.


III-B. Exemple de la LST n°70 : WD Alphabet Arabe

WD AlphabetArabe est un projet exemple WinDev 11 qui montre comment manipuler du texte en Arabe dans un projet dont la langue d'affichage n'est pas exclusivement l'arabe.

L'exemple permet de se familiariser avec l'alphabet Arabe : il prend un mot ou une courte phrase qu'il découpe en lettres isolées. Quel intérêt ? L'Arabe combine étroitement les lettres les unes avec les autres. Il est difficile quand on débute de déchiffrer un mot si on ne parvient pas à dissocier les lettres.

Le bouton [Son] permet d'écouter le son de chacune des lettres.

Le bouton [ANSI] permet d'obtenir la valeur ANSI du texte pour l'éditeur de code.


III-C. Exemple de la LST n°73 : WD ClavierVirtuel Arabe

Il n'est pas toujours possible de disposer d'un vrai clavier en Arabe. Dans un tel cas, un clavier virtuel peut permettre d'entrer des textes en Arabe avec un relatif confort. Un tel clavier virtuel est facile à programmer avec WinDev. Celui que nous proposons dans cet exemple est constitué d'une fenêtre Popup. Une seule ligne de code suffit pour le brancher sur un champ de saisie. La fenêtre Popup est autonome, facilement personnalisable, et elle dialogue automatiquement avec le champ de la fenêtre principale qui l'a appelée.



               Version PDF (Miroir)   Version hors-ligne (Miroir)

Valid XHTML 1.1!Valid CSS!

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2008 Emmanuel Lecoester. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.