Le premier site francophone dédié au développement Pocket PC


Premiers pas avec Forward Pass (partie 1)
Auteur
Stéphane Sibué
Date 24 septembre 2002
 
   

Forward Pass, what's this ?

Forward Pass est un environnement de développement pour les machines Pocket PC. Il utilise la même syntaxe que eVB (Embedded Visual Basic de Microsoft), et y ajoute quelques extensions assez puissantes et pratiques.

Forward Pass est distribué par la société Forward Pass Systems. Vous pouvez d'ailleur télécharger depuis le site de cette société une version d'évaluation.

La grande différence entre Forward Pass et eVB est qu'avec Forward Pass l'environnement de développement tourne sur le Pocket PC (interface et code). Il existe un éditeur de code sur PC qui vous permettra de taper (plus vite et mieux) le code de votre application Forward Pass, mais en ce qui concerne l'interface, vous devrez impérativement la créer directement depuis le Pocket PC.

Forward Pass, premier contact

L'installation depuis le PC s'effectue de manière toute à fait classique.

Elle ajoute sur le PC un éditeur de code, et sur le Pocket PC l'environnement de développement et les bibliothèques d'exécution.

Forward Pass utilise la même librairie VBScript que eVB (ce qui explique la syntaxe 100% identique malgré certains mots clés différents).

Forward Pass = développer directement sur le Pocket PC

Ce qui est sympa avec Forward Pass , c'est que vous développez directement sur votre Pocket PC. Il est vrai qu'avec une machine sans clavier ce n'est pas très simple (du moins au début), mais cette performance mérite qu'on la souligne. Lorsque vous êtes connecté au PC de bureau, ou à votre PC perso vous pouvez utiliser un éditeur de code qui sait télécharger depuis le Pocket PC vers le PC et inversement le code Forward Pass du projet en cours de développement. Ceci permet de taper le code de l'application dans un confort non négligeable.

Lorsque vous créez l'interface graphique, depuis votre Pocket PC, et que vous voulez coder la réponse à un événement, Forward Pass, contrairement à eVB, vous laisse taper 100% du code, déclaration des SUB événement comprises. Il faut donc avoir un bonne mémoire pour se souvenir des noms des événements supportés par un contrôle et de leur déclaration exacte, ex Private Sub BtnQuitter_Click() pour réagir à un click sur le bouton "BtnQuitter".

Ne vous attendez pas à l'aide à la frappe que eVB vous offre, ici il n'y en a pas. Malgré cela, les développeurs eVB seront très vite à l'aise car la syntaxe est à 99% la même. Et pour les petits nouveaux la syntaxe du basic sera très vite comprise.

Créer l'interface graphique depuis votre Pocket PC

La création de l'interface graphique est aussi simple à utiliser que possible. Le positionnement des contrôles avec le stylet n'est pas toujours des plus simple mais avec un peu d'entrainement il est possible de créer des écrans compliqués dans de bonnes conditions.

Le menu "Add" permet d'ajouter un contrôle sur la feuille. Vous pouvez ajouter les contrôles Button, TextBox, ComboBox, ListBox, RadioButton, CheckBox, Label, GroupBox (Frame), ImageBox, DatePicker, TimePicker, Month, ProgressBar, TrackBar, UpDown, et aussi tous les contrôles ActiveX comme par exemple FileSystem, ImageList, ListView, etc...

Un double-click sur un contrôle Affiche une page de propriétés (différente suivant le contrôle concerné) qui permet de lui donner un nom logique, et des valeurs à certaines propriétés (comme le Caption pour un Label par exemple).


Ce type de saisie n'est pas aussi simple que celle que propose eVB mais il ne faut pas oublier que cette saisie se fait directement depuis le Pocket PC !

Il est possible de copier/coller un contrôle. Il n'y a pas la notion de tableaux de contrôles qui permet de donner à plusieurs contrôles le même nom et d'y accéder par un numéro d'index mais on s'y était déjà habitué avec eVB qui ne l'offre pas non plus.

Des flèches permettent de passer d'une fenêtre à l'autre (une application peut-être composée de plusieurs fenêtres bien sûr), un bouton permet de passer à l'éditeur de code (le même code toutes fenêtres confondues), et pour finir, un dernier bouton permet de passer alternativement du mode conception au mode exécution.

Une gestion spéciale des menus et des timers

Avec Forward Pass, il existe un objet Application (App) qui possède des événements (Open, Menu, Timer). C'est par l'intermédiaire de cet objet qu'il faut gérer les menus et les timers. Au démarrage de l'application un événement App_Open est généré. Cet à partir de cet événement que vous pouvez créer vos menu (attention, 1 menu global pour toutes les fenêtres, à vous de gérer ce qui doit être visible ou non d'une fenêtre à l'autre). Lorsque l'utilisateur click sur un menu, c'est l'événement App_Menu(ID) qui est généré. Comme chaque item de menu possède un ID unique (c'est vous qui le donnez à la création de l'item), vous pouvez déterminer l'action à éffectuer.

Il est en est de même avec les timers qui sont créés à volonté par un instruction SetTimer. Chaque timer possède un numéro unique et c'est l'événement App_Timer(ID) qui est généré quand le timer ID arrive à échéance.

Conclusion de cette prise de contact

Forward Pass est un système de développement très simple à utiliser qui reprend la syntaxe du Basic. Il est vendu au prix de 39,95$, ce qui est très honnête (je sais, le gratuit y a pas mieux, mais bon...) et il permet de réaliser des applications au look très sympatique (je vous conseille de tester les exemples de la version de démo, vous allez être agréablement surpris).

Pour le moment je n'ai pas trouvé de moyen de cacher le code à l'utilisateur (il y a toujours une icône qui permet de basculer du mode exécution au mode conception) et si ce n'est pas possible c'est un problème. Si quelqu'un trouve comment faire pour éviter ça qu'il me le fasse savoir par mail (merci d'avance).

Si vous êtres nombreux à apprécier cet outil de développement Pocket PC un forum sera ouvert le concernant. Je compte sur vous pour me le faire savoir (merci d'avance bis).

 

Stéphane Sibué

 
       
   
 
   
Copyright 2001-2004 - Tous droits réservés
 
   

iPAQ est un produit de COMPAQ.
Visual Tools est un produit de Microsoft Corporation.
Toutes les autres marques et produits présents dans ces pages sont la propriété exclusive de leurs sociétés respectives.