Page loading

Share your opinion
What do you think about gambaslinux.fr?
 
Interesting
It miss some informations
Excellent website
Results
WIDGETS GAMBAS
GAMBAS 3 SOFTWARES
TUTORIALS
Library
work with files - Work with files

Un exemple

Afin de faire un tour plus en pratique de Gambas, voyons comment créer une petite application. Faisons simple : le programme ouvrira un fichier, comptera les occurences de chacun des mots trouvés et les affichera dans un tableau, trié par nombre d’occurence décroissante.

Pour cela, je crée un formulaire qui contient un menu et une ListBox (fenêtre pouvait contenir une liste). L’éditeur de menus est très simple d’utilisation.

Dans le même temps, Gambas a créé une classe de même nom que mon formulaire (FMain). Cette classe contient initialement ce qui a été demandé lors de la création du formulaire. Dans mon cas, j’ai un constructeur et un destructeur.

L’éditeur de menu est très simple, il suffit d’ajouter les entrées sous forme hiérarchique.

De même, ajouter la réponse à un évènement se fait aisément : un clic droit sur la widget concernée, selection de l’évènement dans le sous-menu approprié. Une méthode apparait alors dans le source. Ici, j’ai ajouté le traitement de l’évènement Enter sur la liste. La métode créée est PUBLIC SUB ListBox1_Enter(). J’y ajoute pour tester une commande ListBox1.ADD("Un"), qui ajoutera à la liste un élément contenant la chaîne "Un".

gambas03th.png


Pour tester, le raccourci F5 correspond au menu Projet->Démarrer. C’est bon, à chaque fois que le curseur de la souris entre dans la zone de la liste, une ligne contenant le mot "Un" est ajoutée.

Revenons au test. Dans le menu, j’ai ajouté une entrée Fichier qui contient Ouvrir... et Quitter. Un clic sur Quitter fait sortir de l’application. Un clic sur Ouvrir va demander un fichier.

gambas04th.png


Voici ce que cela donne :

PRIVATE SUB Lire(sChemin AS String)
PRINT sChemin
END
PUBLIC SUB Ouvrir_Click()
Dialog.Filter = [ "All files (*.*)" ]
IF Dialog.OpenFile() THEN RETURN
Lire(Dialog.Path)
END

La méthode Ouvrir_Click() a été générée automatiquement en cliquant sur Ouvrir du menu. Il a resté à la remplir. Dialog est un objet qui permet d’ouvrir des boites de dialogues commune, ouvrir un fichier, sauver un fichier ou encore choisir une couleur. On lui donne avant une liste de filtres, ici tous les fichiers, puis on provoque son ouverture. Si aucun fichier n’a été sélectionné, la fonction renvoie vraie (étrange non ?) et l’on sort de la méthode. Sinon, on appelle une fonction chargée de lire le chemin.

On remarquera que l’éditeur possède une aide à la frappe. À peine appuyé entrée à la fin de la déclaration de la méthode qu’il ajoute automatiquement le END correspondant.

On remarque aussi que Gambas possède un typage des variables, qu’il faut d’ailleurs déclarer. Ainsi, le paramètre sChemin est déclaré comme étant une chaîne de caractères (String).

La méthode Lire() est privée, car "interne" à FMain. Pour le moment, dedans, on ne fait qu’un PRINT, pour voir. Effectivement, en démarrant le programme, si on choisi un fichier, il sera affiché dans la console de debug. Parfait.

Le reste des commentaires se trouve dans le fichier source, disponible dans l’archive liée à cet article. Voici un appercu du résultat sur un texte assez long. On remarquera au passage les limites de ce petit programme de texte, qui fait la différence entre "suis" et "suis,".

gambas05th.png


Résumé

  • Type : langage orienté objet
  • Famille : Basic
  • Environnement : Intégré avec développement graphique d’interfaces
  • Compilation : byte code exécuté par une machine virtuelle fournie

Un langage qui peut s’avérer utile pour le développement des petites applications rapidement. Pour ceux qui utilisent déjà un Basic, cela permettra de ne pas être perdu par une syntaxe étrange, même si chaque Basic a ses particularités.

Il manque encore cependant beaucoup d’exemples de code, ce qui fait que l’on se perd rapidement en cherchant dans la documentation en long et en large.


Creation date : 25/02/2008 @ 19:34
Last update : 02/10/2009 @ 21:33
Category : work with files
Page read 7525 times


Print the article Print the article


react.gifReactions to this article


Reaction #5 

by spheris 26/01/2011 @ 21:21

Thanks for this comment and this very pleased information !
regards
wink

Reaction #3 

by ringostare 30/12/2008 @ 13:30

Bonjour,
Merci pour les exemples, il en faudrait effectivement beaucoup plus pour les débutants. Il n'y a plus de lien "fichier source" pour cet exemple, ce qui fait que je n'ai pu en venir à bout.
Merci quand même

Reaction #2 

by djmcg 21/07/2008 @ 20:18

Merci pour cet exemple.
Je débute avec Gambas (j'ai insallé linux en juin dernier) et les exemple sont les bien venu.
Merci beaucoup.
Jean-Marie


Reaction #1 

by roro 05/05/2008 @ 19:22

Encore qlq. uns comme ceux-ci, car j'apprécie bien.
  La gestion des tables//tableaux serait bien intéressante pour moi.
roro

QUICK MENU
SEARCH




LANGUAGE
COMPONENTS
Other
LANGUAGE
Where, who?
VISITS

   visitors

   visitors online

ARCHIVES GAMBAS 1/2
^ Top ^