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


NS Basic par l'exemple (partie 2)
 
   


Partie 1

Ecrire dans un fichier

' DEBUT CODE

' On ajoute 2 boutons : "Ecrire" & "Quitter"
' --------------------------------------------------------
AddObject "CommandButton","CommandButton1", 140, 215, 80, 32
AddObject "CommandButton","CommandButton2", 10, 215, 80, 32

CommandButton1.Caption = "Ecrire"
CommandButton2.Caption = "Quitter"

' On ajoute une zone de texte multi-lignes
' --------------------------------------------------------
AddObject "TextBox","TextBox1", 7, 15, 215, 195

TextBox1.MultiLine = True

' On ajoute l'ActiveX FileControl (gestion des fichiers)
' --------------------------------------------------------
AddObject "FILECTL.File.1","File1", 0, 0, 0, 0

' On "code" la procédure appelée quand on presse "CommandButton1"
' C'est à dire "Ecrire"
' ----------------------------------------------------------------
Sub CommandButton1_Click()

'1- On crée le fichier test1.txt
' On part du principe que le répertoire existe
'2- On écrit le contenu de la zone de texte dans le fichier
'3- On ferme test1.txt

File1.Open "\Carte de Stockage\_NSBASIC\test1.txt", 2
File1.LinePrint TextBox1.Text
File1.Close

End Sub


' On "code" la procédure appelée quand on presse "CommandButton2"
' C'est à dire "Quitter"
' ----------------------------------------------------------------
Sub CommandButton2_Click()

Bye

End Sub

' FIN CODE

Lire le fichier test1.txt

C'est à peu près le même principe. Lle libellé de "CommandButton1" est remplacé par "Lire" et on change la procédure Click() de "CommandButton1" :

' DEBUT CODE

' On ajoute 2 boutons : "Lire" & "Quitter"
' --------------------------------------------------------
AddObject "CommandButton","CommandButton1", 140, 215, 80, 32
AddObject "CommandButton","CommandButton2", 10, 215, 80, 32

CommandButton1.Caption = "Lire"
CommandButton2.Caption = "Quitter"

' On ajoute une zone de texte multi-lignes
' --------------------------------------------------------
AddObject "TextBox","TextBox1", 7, 15, 215, 195

TextBox1.MultiLine = True

' On ajoute l'ActiveX FileControl (gestion des fichiers)
' --------------------------------------------------------
AddObject "FILECTL.File.1","File1", 0, 0, 0, 0

' On "code" la procédure appelée quand on presse "CommandButton1"
' C'est à dire "Lire"
' ----------------------------------------------------------------
Sub CommandButton1_Click()

'1- On ouvre le fichier en mode "lecture"
'2- On parcourt toutes les lignes du fichier : "LineInputString()"
'3- On copie ces lignes dans la zone de texte
'4- On affiche le nombre de caractères contenus dans le fichier
'5- On ferme test1.txt

File1.Open "\Carte de Stockage\_NSBASIC\test1.txt", 1

Do while File1.Eof = False
TextBox1.Text = TextBox1.Text + File1.LineInputString() + vbCrlf
Loop

TextBox1.Text = TextBox1.Text + vbCrlf
TextBox1.Text = TextBox1.Text + "Le fichier contient " & File1.Lof & " caractères (Sauts de ligne compris)"

File1.Close

End Sub


' On "code" la procédure appelée quand on presse "CommandButton2"
' C'est à dire "Quitter"
' ----------------------------------------------------------------
Sub CommandButton2_Click()

Bye

End Sub

' FIN CODE

Etat du Clavier

La variable ou propriété "KeyboardStatus" prend la valeur :

- "False" si le clavier virtuel n'apparaît pas
- "True" si le clavier virtuel est visible

Le fait de changer cette valeur par programmation permet de faire apparaître ou non le clavier virtuel à volonté.

Lorsque le clavier virtuel apparaît ou disparaît, c'est l'évènement "KeyboardStatusChanged()" qui est déclenché.

L'exemple ci-dessous permet de changer le statut du clavier :

' DEBUT CODE

AddObject "CommandButton","CommandButton1", 140, 150, 80, 32
AddObject "CommandButton","CommandButton2", 10, 150, 80, 32

CommandButton1.Caption = "Clavier"
CommandButton2.Caption = "Quitter"

AddObject "TextBox","TextBox1", 7, 15, 215, 130

TextBox1.MultiLine = True

' Si on clique sur le bouton "Clavier' on change le statut du clavier
' ----------------------------------------------------------------
Sub CommandButton1_Click()
KeyboardStatus = not(KeyboardStatus )
End Sub

Sub CommandButton2_Click()

Bye

End Sub

' Si le clavier apparaît ou disparaît, c'est cet évènement qui
' est déclenché
' C'est à cet endroit que nous faisons apparaître la valeur de
' KeyboardStatus dans la zone de texte
' ----------------------------------------------------------------
Sub KeyboardStatusChanged()

TextBox1.Text=TextBox1.Text & KeyboardStatus & vbcrlf

End sub


' FIN CODE

Pistes pour la gestion des touches

Je vous conseille d'aller voir par là :

http://www.nsbasic.com/s309/HotKey/S309HotKey.html
http://www.nsbasic.com/s309/S309HotKeyDownload.html

Cet ActiveX permet de détecter si un bouton de votre PDA a été relâché ou pressé Il semblerait que cela fonctionne aussi avec les touches du clavier virtuel, mais je n'y suis pas arrivé (j'ai un HP 568, si qqu'un a une idée ...).

Voilà voilà. C'est tout pour cette fois.

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.