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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
| ModMain.Module ' Gambas module file
PUBLIC ValCurseur AS INTEGER 'La variable Publique "ValCurseur" est un nombre PUBLIC ValCurseurConv AS STRING 'La variable Publique "ValCurseurConv" est du texte
FMain.class ' Gambas class file
' Bonjour ' Voici un petit programme pour voir les différents types de curseur que l'on peut utiliser... ' Certes il y a des améliorations possible ' Mais je l'ai voulu modifiable et il n'est là que pour servir d'exemple. ' ' Voici le détail de l'articulation... ' ' 2 possibilités pour voir ce que donne les différentes combinaisons. ' a) soit la visualisation des curseurs dit "Conventionnel" ' b) soit la visualisation des curseurs par valeur numérique. ' Je n'ai pas traité les cas ou l'on veut mettre une image ou du texte ' en lieu et place du curseur (mais est-ce possible ?) ' Je vous donne le détail de chaque ligne dans toutes les procédures... ' J'espère que ce petit programme pourra vous apporter un peu d'aide. ' PUBLIC SUB _new() 'Inutilisé END PUBLIC SUB Form_Open() 'Ce qui sera fait à l'ouverture du formulaire ME.Center 'Centre la fenêtre dans l'écran Label1.Caption = "" 'On efface le contenu du Label1 Label2.Alignment = 3 'On affichera le contenu de Label2 en alignement centré Label2.Caption = ("Conventionnel") 'On affiche le texte dans le Label2 WITH ListBox1 '"Pour" la ListBox1 (Option a) .Add("Default", 0) 'On ajoute la ligne "Default" à l'index 0 .Add("Blank", 1) 'On ajoute la ligne "Blank" à l'index 1 .Add("Arrow", 2) 'On ajoute la ligne "Arrow" à l'index 2 .Add("Cross", 3) 'Et ainsi de suite pour toutes les autres lignes .Add("Wait", 4) 'A noter que l'index commence à 0 pour la ligne 1 .Add("Text", 5) 'Ce qui fera un décalage par rapport au visuel. .Add("SizeAll", 6) 'On peut apparemment ajouter autant de ligne que l'on veut. .Add("SizeE", 7) 'Vous remarquerez que la liste n'est pas triée par ordre alphabétique .Add("SizeS", 8) 'Mais si le cœur vous en dit vous pourrez le faire en changeant l'index .Add("SizeN", 9) 'puis en modifiant les correspondances du "Select/Case/EndSelect" pour affichage .Add("SizeH", 10) 'dans la procédure ListBox1_Click() .Add("SizeV", 11) ' .Add("SizeW", 12) ' .Add("SizeNE", 13) ' .Add("SizeNW", 14) ' .Add("SizeSE", 15) ' .Add("SizeSW", 16) ' .Add("SizeNWSE", 17) ' .Add("SizeNESW", 18) ' .Add("SplitH", 19) ' .Add("SplitV", 20) ' .Add("Pointing", 21) ' .Visible = FALSE 'On cache ListBox1 END WITH 'Fin de "pour" ListBox1 ButtonBox1.Text = ListBox1.List[0] '0n attribue (arbitrairement) le curseur par "Default" à l'affichage dans ButtonBox1 Button1.Text = ("Plus") 'On change le texte affiché sur le Button1 (servira pour augmenter de 1 la valeur) Button2.Text = ("Moins") 'On change le texte affiché sur le Button2 (servira pour diminuer de 1 la valeur) Button3.Text = ("Quitter") 'On change le texte pour le Button3 (le fameux bouton "Quitter") Button4.Text = ("RAZ") 'On change le texte du Button4 (pour une Remise A Zéro de la valeur) Slider1.MaxValue = 155 'On dit que la valeur maximale du Slider1 sera de 155 (apparemment inutile d'aller au delà) END 'fin de la procédure sur Form_Open()
PUBLIC SUB actualisation() 'Cette procédure sert à "Actualiser" l'affichage du curseur et le RAZ. (option b) DIM ValCurseur AS INTEGER 'On Dim...ensionne la variable "ValCurseur" en indiquant que ce sera un nombre ButtonBox1.Text = ListBox1.List[0] 'Puisque l'on va utiliser les autres boutons on remet l'affichage de ButtonBox1 à 0 IF ModMain.ValCurseur >= 155 THEN ModMain.ValCurseur = 155 'Si la variable ValCurseur du module ModMain est supérieur 'ou égale à 155 alors cette variable fera 155. Cela évitera d'aller au dela des 155 cas prévus au départ IF ModMain.ValCurseur <= 0 THEN ModMain.ValCurseur = 0 'Si la variable ValCurseur du module ModMain est inférieur 'ou égale à 0 alors cette variable fera 0. Cela évitera de créer une erreur et de toutes façons je ne pense pas 'qu'il y ai des images de curseur inférieur à 0... (heu j'ai pas testé;-) Label1.Caption = "Mouse = " & ModMain.ValCurseur '0n affiche "Mouse = " suivi de la valeur de la variable 'ValCurseur du module ModMain pour l'affichage à l'utilisateur. Slider1.Value = ModMain.ValCurseur 'On ajuste l'affichage de Slider1 par rapport à la valeur de ValCurseur du module ModMain ME.Mouse = ModMain.ValCurseur 'On affecte la valeur de ValCurseur du module ModMain à la souris (Me.Mouse) END 'fin de la procédure actualisation()
PUBLIC SUB Button1_Click() 'Que se passe-t-il si on a cliqué sur le Button1 (Plus) ? ModMain.ValCurseur = ModMain.ValCurseur + 1 'On augmente de 1 la valeur de ValCurseur du module ModMain actualisation 'puis on actualise pour l'affichage. END 'fin de la procédure Button1_Click()
PUBLIC SUB Button2_Click() 'Que se passe-t-il si on a cliqué sur le Button2 (Moins) ? ModMain.ValCurseur = ModMain.ValCurseur - 1 'On diminue de 1 la valeur de ValCurseur du module ModMain actualisation 'puis on actualise pour l'affichage. END 'fin de la procédure Button2_Click()
PUBLIC SUB Slider1_Change() 'Que se passe-t-il si la valeur de Slider1 change ? ModMain.ValCurseur = Slider1.Value 'On affecte la valeur de Slider1 à ValCurseur du module ModMain actualisation 'puis on actualise pour l'affichage. END 'fin de la procédure Slider1_Change()
PUBLIC SUB Button3_Click() 'Que se passe-t-il si on a cliqué sur le Button3 (Quitter) ? QUIT 'Ben... On quitte... (il n'y a pas de gestion de l'enregistrement) END 'fin de la procédure Button3_Click()
PUBLIC SUB Button4_Click() 'Que se passe-t-il si on a cliqué sur le Button4 (RAZ) ? ModMain.ValCurseur = 0 'On met la valeur de ValCurseur du module ModMain à 0 Slider1.Value = ModMain.ValCurseur 'On ajuste le Slider1 à la valeur de ValCurseur du module ModMain soit 0 actualisation 'Et on va actualiser... END 'fin de la procédure Button4_Click()
PUBLIC SUB ButtonBox1_Click() 'Que se passe-t-il si on a cliqué sur le ButtonBox1 (...) ? ListBox1.Visible = TRUE 'On affiche ou rend visible la ListBox1 END 'fin de la procédure ButtonBox1_Click()
PUBLIC SUB ListBox1_Click() 'Que se passe-t-il si on a cliqué sur la ListBox1 (liste des choix) ? ModMain.ValCurseur = ListBox1.Index 'ValCurseur du module ModMain récupère la valeur d'index de la ListBox1 ModMain.ValCurseurConv = ListBox1.List[ModMain.ValCurseur] 'ValCurseurConv du module ModMain récupère le texte de la ListBox1 selon l'index ButtonBox1.Text = ModMain.ValCurseurConv 'On affiche dans ButtonBox1 la valeur de ValCurseurConv du module ModMain SELECT ListBox1.Index 'Selon l'index de ListBox1 sélectionné... CASE 0 'Cas 0 (première ligne sélectionnée mais l'index vaut 0... Souvenez-vous du décalage) ME.mouse = Mouse.Default 'Ma souris = la souris par défaut Label1.Caption = "Me.mouse = Mouse.Default" 'On affiche pour l'utilisateur... CASE 1 'Cas 1 ME.mouse = Mouse.Blank 'Ma souris = la souris invisible (ça change de l'homme...) Label1.Caption = "Me.mouse = Mouse.Blank" 'On affiche pour l'utilisateur... CASE 2 'Cas 2 ME.mouse = Mouse.Arrow 'Ma souris = la souris en forme de flèche (comme par défaut) Label1.Caption = "Me.mouse = Mouse.Arrow" 'On affiche pour l'utilisateur... CASE 3 'Cas 3... Etc Etc Etc ME.mouse = Mouse.Cross 'Ma souris = la souris en forme de croix Label1.Caption = "Me.mouse = Mouse.Cross" CASE 4 ME.mouse = Mouse.Wait 'Ma souris = la souris en forme de sablier d'occupation Label1.Caption = "Me.mouse = Mouse.Wait" CASE 5 ME.mouse = Mouse.Text 'Ma souris = la souris en forme de Insertion de texte Label1.Caption = "Me.mouse = Mouse.Text" CASE 6 ME.mouse = Mouse.SizeAll 'Ma souris = la souris en forme de main fermée Label1.Caption = "Me.mouse = Mouse.SizeAll" CASE 7 ME.mouse = Mouse.SizeE 'Ma souris = la souris en forme de modification fenêtre vers la droite Label1.Caption = "Me.mouse = Mouse.SizeE" CASE 8 ME.mouse = Mouse.SizeS 'Ma souris = la souris en forme de modification fenêtre vers le bas Label1.Caption = "Me.mouse = Mouse.SizeS" CASE 9 ME.mouse = Mouse.SizeN 'Ma souris = la souris en forme de modification fenêtre vers le haut Label1.Caption = "Me.mouse = Mouse.SizeN" CASE 10 ME.mouse = Mouse.SizeH 'Ma souris = la souris en forme de flèches gauche et droite Label1.Caption = "Me.mouse = Mouse.SizeH" CASE 11 ME.mouse = Mouse.SizeV 'Ma souris = la souris en forme de flèches haut et bas Label1.Caption = "Me.mouse = Mouse.SizeV" CASE 12 ME.mouse = Mouse.SizeW 'Ma souris = la souris en forme de modification fenêtre vers la gauche Label1.Caption = "Me.mouse = Mouse.SizeW" CASE 13 ME.mouse = Mouse.SizeNE 'Ma souris = la souris en forme de modification fenêtre vers la droite en haut Label1.Caption = "Me.mouse = Mouse.SizeNE" CASE 14 ME.mouse = Mouse.SizeNW 'Ma souris = la souris en forme de modification fenêtre vers la gauche en haut Label1.Caption = "Me.mouse = Mouse.SizeNW" CASE 15 ME.mouse = Mouse.SizeSE 'Ma souris = la souris en forme de modification fenêtre vers la droite en bas Label1.Caption = "Me.mouse = Mouse.SizeSE" CASE 16 ME.mouse = Mouse.SizeSW 'Ma souris = la souris en forme de modification fenêtre vers la gauche en bas Label1.Caption = "Me.mouse = Mouse.SizeSW" CASE 17 ME.mouse = Mouse.SizeNWSE 'Ma souris = la souris en forme de flèches diagonale Label1.Caption = "Me.mouse = Mouse.SizeNWSE" CASE 18 ME.mouse = Mouse.SizeNESW 'Ma souris = la souris en forme de flèches diagonale Label1.Caption = "Me.mouse = Mouse.SizeNESW" CASE 19 ME.mouse = Mouse.SplitH 'identique à SizeH Label1.Caption = "Me.mouse = Mouse.SplitH" CASE 20 ME.mouse = Mouse.SplitV 'identique à SizeV Label1.Caption = "Me.mouse = Mouse.SplitV" CASE 21 ME.mouse = Mouse.Pointing 'Ma souris = la souris en forme de main index levé Label1.Caption = "Me.mouse = Mouse.Pointing" END SELECT 'Fin de Selon l'index de ListBox1 sélectionné... ListBox1.Visible = FALSE 'On viens de faire une sélection donc on cache la ListBox1 END 'fin de la procédure ListBox1_Click() 'Tous les objets sont codés ici. Je n'ai pas utilisé FMain.form/Propriétés afin d'éviter confusion 'et gestion de la priorité des arguments. 'Les 2 variables ValCurseur et ValCurseurConv se trouvent dans le module ModMain. 'De cette façon elles sont atteignable à partir de n'importe qu'elle feuille (ou form). 'J'ai essayé de traduire, à ma façon, les différentes instructions utilisées dans ce programme. 'C'est une traduction tout à fait personnelle qui n'engage que moi. Mais de cette façon je trouve qu'il est plus 'facile de comprendre le fonctionnement du programme...
|