Gambas France BETA


Pas de compte ? Incription

[GAMBAS2]Se faire la main avec un petit exemple[LOTO]

1
AuteurMessages
Reivillo#1 Posté le 22/6/2011 à 01:18:00
C' est ici, et nul part ailleurs. « Et pis c'est tout ! »Bonjour à tous.

Testez ce petit jouet:



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
' Gambas class file
'[url=http://gambasdoc.org/help?fr&v2]http://gambasdoc.org/help?fr&v2[/url]
PUBLIC mini AS BYTE = 1 '<---------Pour initialiser
PUBLIC numr AS BYTE = 5 '<---------N numero par tirage
PUBLIC maxi AS BYTE = 49 '<--------Changer pour TESTER
PUBLIC tabl AS BYTE[50] '<---------TABLEAU: 1 de + que maxi, on part de 1 et non de 0
PUBLIC drp1 AS BOOLEAN = TRUE '<---Autorise ou annule le CHARGEMENT
PUBLIC drp2 AS BOOLEAN = FALSE '<--Interdit l'extraction après un CHARGEMENT
PUBLIC afch AS STRING '<-----------Pour l'affichage

PUBLIC SUB Form_Open()
Button2.tag = 0
END

PUBLIC SUB _core_()
TextArea1.Text = ""
_charger_
_afficher_
TextArea1.Text = TextArea1.Text & "Test après CHARGEMENT" Chr(10 afc Chr(10)
_brasser_
_afficher_
TextArea1.Text = TextArea1.Text & "Test après BRASSAGE" Chr(10 afc Chr(10)
_extraire_
TextBox1.Text = afch
_afficher_
TextArea1.Text = TextArea1.Text & "Test après EXTRACTION" Chr(10 afch
END

PUBLIC SUB _charger_()
DIM whl1 AS BYTE = mini
IF drp1 THEN
WHILE (whl1 <= maxi)
tabl[whl1] = whl1
INC whl1
WEND
drp1 = FALSE '<---------------On annule le CHARGEMENT,
' pour CONTINUER à extraire du même TABLEAU
ENDIF
END

PUBLIC SUB _brasser_()
DIM bclf AS INTEGER
DIM swp1, swp2 AS BYTE
FOR bclf = mini TO 1000
swp1 = _rnd_(maxi) '<-----------On choisi 2 éléments,
swp2 = _rnd_(maxi) '<-----------en pseudo-aléatoire
SWAP tabl[swp1], tabl[swp2] '<--et on interverti leur contenu
' tout cela 1000 fois
NEXT
END

PUBLIC SUB _afficher_()
DIM bclf AS BYTE
afch = " "
FOR bclf = mini TO maxi
afch = afch & tabl[bclf] & " "
NEXT
END

PUBLIC SUB _extraire_()
DIM rpat, extr AS BYTE
afch = " "
IF drp2 = FALSE THEN
RETURN
ENDIF
INC rpat
REPEAT
_brasser_
extr = _rnd_(maxi) '<----------------On extrait 1 élément, en pseudo-aléatoire
afch = afch & " " & tabl[extr] '<----On sauve sont contenu, pour l'affichage
tabl[extr] = tabl[maxi] '<-----------On remplace son contenu,
' avec celui du dernier élément
DEC maxi '<--------------------------On supprime le dernier élément
INC rpat
UNTIL rpat > numr
IF (maxi < numr) THEN
Button2.tag = 0 '<-----------Invalide EXTRAIRE, si plus assez de numéro
ENDIF
afch = afch & " - " & _rnd_(10)
END

PUBLIC FUNCTION _rnd_(data AS BYTE) AS BYTE
RETURN Int(Rnd(data) + mini)
END

PUBLIC SUB Frame1_MouseDown()
TextBox2.text = " LAST.tag: " & LAST.tag
SELECT CASE LAST.tag
CASE 1 '<--------------CHARGER
drp1 = TRUE '<-------On autorise le reCHARGEMENT,
' pour RECOMMENCER avec un nouveau TABLEAU
drp2 = FALSE
maxi = 49
Button2.tag = 2
_core_
CASE 2 '<--------------EXTRAIRE
drp2 = TRUE '<-------Autorise l'extraction
_core_
CASE 3 '<--------------QUITTER
WAIT 1 '<------------Pour voir le TAG du bouton
ME.Close
END SELECT
END



Merci.
Ne pas se restreindre dans les remarques.

Reivillo.
Version LinuxMint 13 (1.6.1-1+maya-mate(32-bit)) LTS Noyau 3.14.33-031433-generic (27-02-2015)
LinuxMint 13 Mate Fr ICI, LinuxMint 17 Mate Fr .
Programmation Gambas3 Installé depuis la Console Terminal avec successivement: Les 3 Lignes sudo en Gras ci-dessous...
sudo add-apt-repository ppa:gambas-team/gambas3
sudo apt-get update
sudo apt-get install gambas3 -y
Gambas3.8.4-57.47 (Mise à Jour Auto via mintupdate le 28-01-2016)
Pour la Doc, c'est vers là: Documentation Gambas3 FR
spheris#2 Posté le 22/6/2011 à 20:22:00
Reveillo,

Merci pour cette petite application.
Mes premières impressions :

L'interface est très sobre et tu vas à l'essentiel.
Par contre les termes Charger, extraire sont trop compliqués pour un utilisateur basique.

Dans le détail:
Coté code c'est propre, clair, lisible et bien compréhensible et surtout bien commenté.
Par contre petite question. Pourquoi ajouter un WAIT 1 dans la fermeture de ton application?

Ton interface manque cependant de convivialité (des images, et pourquoi pas des couleurs...)

Ton programme ne plante jamais chez moi.

Merci pour ta participation dans le monde du libre.
Bonne continuation et bon courage.
;) ;)
Reivillo#3 Posté le 23/6/2011 à 11:49:00
C' est ici, et nul part ailleurs. « Et pis c'est tout ! »Bonjour spheris.

Le WAIT 1, pause 1 seconde,
je l'avais mis pour voir le TAG du bouton QUITTER.

Je remarque, que sur le FORUM,
l'indentation n'est pas reconnue.
Malgré les BALISES.

Reivillo.


Version LinuxMint 13 (1.6.1-1+maya-mate(32-bit)) LTS Noyau 3.14.33-031433-generic (27-02-2015)
LinuxMint 13 Mate Fr ICI, LinuxMint 17 Mate Fr .
Programmation Gambas3 Installé depuis la Console Terminal avec successivement: Les 3 Lignes sudo en Gras ci-dessous...
sudo add-apt-repository ppa:gambas-team/gambas3
sudo apt-get update
sudo apt-get install gambas3 -y
Gambas3.8.4-57.47 (Mise à Jour Auto via mintupdate le 28-01-2016)
Pour la Doc, c'est vers là: Documentation Gambas3 FR
spheris#4 Posté le 27/6/2011 à 17:14:00
Reivillo,
Disons qu'il faut mettre le texte souhaité entre les balises et non les balises avant ou après.
Un exemple :

Sélectionne ton texte puis met le entre les balises "gras" et cela donne ceci
Sélectionne ton texte puis met le entre les balises "Citation" et cela donne ceci

1
Sélectionne ton texte puis met le entre les balises "code" et cela donne ceci

A bientôt
;) ;)
manu#5 Posté le 27/6/2011 à 20:30:00
Avec Gambas ca roule !Et puis le forum va bientôt déménager et non seulement l'indentation existera mais aussi la coloration syntaxique de gambas ! :)
Jeanne d'arc, elle a frit, elle a tout compris ! ;)

Config :
Manjaro linux (excellent !)
XFCE 4.1 (simple et efficace)
Gambas 3 dans les dépots (confort total)
Reivillo#6 Posté le 28/6/2011 à 12:28:00
C' est ici, et nul part ailleurs. « Et pis c'est tout ! »Bonjour.

A spheris et manu.
J'ai pris acte de votre message.

Reivillo.


Version LinuxMint 13 (1.6.1-1+maya-mate(32-bit)) LTS Noyau 3.14.33-031433-generic (27-02-2015)
LinuxMint 13 Mate Fr ICI, LinuxMint 17 Mate Fr .
Programmation Gambas3 Installé depuis la Console Terminal avec successivement: Les 3 Lignes sudo en Gras ci-dessous...
sudo add-apt-repository ppa:gambas-team/gambas3
sudo apt-get update
sudo apt-get install gambas3 -y
Gambas3.8.4-57.47 (Mise à Jour Auto via mintupdate le 28-01-2016)
Pour la Doc, c'est vers là: Documentation Gambas3 FR
1