Portée des variables (Public Shared)
Salut,
Après avoir parcouru http://xo.developpez.com/tutoriel/vb.net/poo/ je me suis renseigné sur la structure générale d'un document.
J'ai lu aussi http://www.excelpourtous.com/index.php?artid=33 pour la portée des variables, mais aussi http://plasserre.developpez.com/cour...e-vb1#LV-B-3-b sans trouver ma réponse.
En fait j'ai:
Code:
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
| Imports System
Class Form1
PublicShared TableIndex AsInteger = 0
PublicShared TableFiles() AsString
Private Sub Boutton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Boutton
If (AddFiles.ShowDialog() = System.Windows.Forms.DialogResult.OK) Then
Dim file AsString
ForEach file In AddFiles.FileNames
If Array.Exists(ListFiles, AddressOf CheckExistence) Then
ListFiles.Items.Add(file)
TableFiles(TableIndex) = file
TableIndex = TableIndex + 1
EndIf
Next
EndIf
End Sub
Private Shared Function CheckExistence(ByVal NameFile AsString) AsBoolean
For Each File InTableFiles
If File = NameFile Then
Return False
End If
Next
Return True
End Function
End Class |
En gros j'ai une liste de fichiers, je sélectionne des nouveaux fichiers et je regarde qu'ils n'existent pas dans mon tableau (équivalent !in_array() php).
Le problème c'est que si je mets
Code:
Public TableFiles() As String
mon TableFiles dans ma fonction est souligné (erreur, je crois qu'il ne trouve pas la variable, mais avec shared ça fonctionne). Pourtant, en Public, la variable est disponible partout?
Merci
P.S Désolé pour le code y'a des problèmes d'espace...