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


NS Basic par l'exemple (partie 1)
 
   


Partie 2

Pour être opérationnel rapidement, le "développement par l'exemple" me semble une bonne solution (plutôt que de longues explications), mais attention, ces exemples ne sont pas forcément des plus élégants, ils représentent juste un moyen d'appréhender NS Basic d'une manière simple. Bonne Lecture.


NS Basic est un outil de développement pour le Palm, le Newton & le PocketPC type "Visual Basic".
La version "desktop" du Palm est beaucoup plus aboutie que celle du PPC, cependant la version PPC permet de coder "On Board", c'est à dire directement sur votre "joujou" : vous bénéficiez d'un éditeur & d'un mini IDE"visuel" directement sur votre Pocket ...


Pour une présentation plus détaillée de l'outil, je vous laisse consulter l'article de Stéphane, le Webmaster de ... Et passons directement à la pratique.


Pour utiliser les exemples, il suffit de taper le code dans le "BASIC Editor", Sauvegarder , puis cliquer sur le bouton du menu [GO]

Les méthodes

'Un classique ...
Sub MyProcedure

 Print "Hello World"

End Sub
MyProcedure
'Call MyProcedure , fonctionne aussi

Vous obtiendrez :

Les fonctions

Function sMyFunction(sMessage)


 Print sMessage
 sMyFunction = "OK"
 'cela signifie que la fonction retournera "OK"

End Function               
Dim sValeur


sValeur=sMyFunction("HELLO") 
Print sValeur

Vous obtiendrez :

 

Les boucles

Print "Boucle For ... Next"
Print "-------------------"
For i=1 to 3
  Print i
Next              

Print "Boucle Do While ..."
Print "-------------------"
i=0
Do While i<2
  Print i
  i=i+1
Loop
Print "Boucle Do ... Until"
Print "-------------------"
i=0
Do
  Print i
  i=i+1
Loop Until i>=2

Vous obtiendrez :

Les formulaires et objets

Un formulaire jaune...

Dim Form1               
Sub Form1_Show


  Output.BackColor = vbYELLOW

End Sub
Form1_Show

Un formulaire jaune avec un "Label" blanc sur fond rouge (les goûts & les couleurs ...) :

Dans NSBasic, un formulaire peut être représenté par un tableau indicé de variables, l'indice 0 représente le formulaire, les indices suivants les objets contenus dans ce formulaire. Dans l'exemple qui suit, nous ajoutons une étiquette à "Form1", sa référence sera Form1(1), si nous ajoutons un 2ème objet, nous y ferons donc référence par Form1(2), etc. ...

Donc, l'affectation d'une variable à un formulaire, permet de simuler l'utilisation de plusieurs formulaires dans une application, car NS Basic ne sait pas le faire en standard.

Le code ajouté par rapport à l'exemple précédent est en rouge

Dim Form1               
Sub Form1_Load 
  
  REDIM Form1(1)
  ADDOBJECT "Label", "Label1", 20, 40, 206, 18
  SET Form1(1) = Label1
  Form1(1).Alignment = 2
  Form1(1).FontBold = TRUE
  Form1(1).ForeColor = vbWHITE
  Form1(1).BackColor = vbRED
  Form1(1).Caption = "Hello World Again !"

End Sub
Sub Form1_Show


  Output.BackColor = vbYELLOW
  Form1_Load
  Form1(1).Show
                 
End Sub
Form1_Show

Vous obtiendrez :


... Le même, avec un bouton qui "lance" une boîte de dialogue :

Dim Form1               
Sub Form1_Load 
                 
  REDIM Form1(2)

  ADDOBJECT "Label", "Label1", 20, 40, 206, 18
  SET Form1(1) = Label1
  Form1(1).Alignment = 2
  Form1(1).FontBold = TRUE
  Form1(1).ForeColor = vbWHITE
  Form1(1).BackColor = vbRED
  Form1(1).Caption = "Hello World Again !"
  ADDOBJECT "CommandButton", "CommandButton1", 60, 120, 115, 18
  SET Form1(2) = CommandButton1
  Form1(2).Caption = "GO !!!"
End Sub
Sub Form1_Show
 Output.BackColor = vbYELLOW
 Form1_Load
                 
 Form1(1).Show
 Form1(2).Show
                 
End Sub
Sub CommandButton1_Click

   MsgBox "Bonjour tout le monde !"

End Sub

Form1_Show

Remarque : il faut bien penser à redimensionner le tableau Form1() à 3 éléments (de zéro à 2) avec l'instruction REDIM Form1(2)

Vous obtiendrez :

Remarques :

Vous pouvez aussi faire référence à l'objet par son propre nom, (cf. plus bas)

La déclaration d'une méthode ou évènement de cet objet se fait de la façon suivante :

Sub nom_objet_nom_méthode (ex : CommandButton1_Click)


NS Basic n'intègre donc pas directement la gestion de plusieurs formulaire. Cette méthode des tableaux indicés permet de gérer plus facilement les objets du formulaire (par exemple si vous voulez faire disparaître tous les objets d'un formulaire, une simple boucle "FOR NEXT" suffira) ainsi que de simuler une application "multi écrans". Mais vous pouvez travailler de manière plus classique si votre application ne comporte par exemple qu'un seul écran :

Sub Form1_Load 
               
  ADDOBJECT "Label", "Label1", 20, 40, 206, 18
          
  Label1.Alignment = 2
  Label1.FontBold = TRUE
  Label1.ForeColor = vbWHITE
  Label1.BackColor = vbRED
  Label1.Caption = "Hello World Again !"
               
  ADDOBJECT "CommandButton", "CommandButton1", 60, 120, 115, 18
               
  CommandButton1.Caption = "GO !!!"

End Sub
               
Sub Form1_Show
               
  Output.BackColor = vbYELLOW
  Form1_Load
               
  Label1.Show
  CommandButton1.Show

End Sub
               
Sub CommandButton1_Click

  MsgBox "Bonjour tout le monde !"

End Sub
               
Form1_Show

Conclusion

Voilà, c'est tout pour le moment. Pour d'autres "objets" et leurs différentes propriétés, je vous laisse jouer avec "Visual Designer" fournit avec NS Basic, qui vous permet de dessiner vos écrans et génère le code automatiquement, et ceci directement sur votre pocket ! (La version Desktop est pas mal aussi pour s'initier à l'ensemble des composants de NS Basic)


Prochains épisodes

  • Les Fichiers
  • Gestion des "touches"
  • Les Bases de données (ADOCE)
  • Winsock
Remarque : NS Basic pour Windows CE s'appuie sur le moteur vbscript de Microsoft. Avec l'arrivée du "Compact Framework" de MS, il y aura peut-être moyen de créer ses propres applications scriptables, comme cela est déjà possible avec le Framework standard (cf. Article Richard Clarck). Dans ce cas, l'utilité de NS Basic (version Pocket) sera nettement moins pertinente ... À voir...

 

Palmipod

 
       
   
 
   
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.