Meilleur auteur de réponses
TABLEAU

Question
-
Réponses
-
Bonjour,
Si vous obtenez ArgumentOutOfRangeException dans la ligne :
iconLabel.Text=icons.ElementAt(randomNumber)
Cela indique que la valeur de la variable randomNumber n'est pas comprise entre 0 et la taille - 1 de votre tableau icons. Par exemple si icons est un tableau de 5 éléments, alors randomNumber doit-être compris entre 0 et 4. Vérifiez donc la valeur obtenue dans randomNumber.
Cordialement
Gilles TOURREAU - MVP C# - MCTS ADO .NET 3.5 - MCPD Windows Developper 3.5 - Architecte .NET/Consultant/Formateur - http://gilles.tourreau.fr- Proposé comme réponse EhJoe dimanche 29 août 2010 18:09
- Marqué comme réponse Alex Petrescu jeudi 2 septembre 2010 09:37
Toutes les réponses
-
Bonjour
Il s'agit d'un programme proposé dans le didactiel VISUAL BASIC 2010 EXPRESS
Le voici
Dim
random As New Random
Dim temporaryArray() As String = {"!", "!", "N", "N", ",", ",", "K", "K", "b", "b", "v", "v", "w", "w", "z", "z"}
Dim icons As List(Of String) = temporaryArray.ToList()
Private Sub AssignIconsToSquares()
For Each Control In TableLayoutPanel1.Controls
Dim iconLabel As Label = TryCast(Control, Label)
If iconLabel IsNot Nothing Then
Dim randomNumber As Integer = random.Next(icons.Count)
iconLabel.Text = icons.ElementAt(randomNumber)
icons.RemoveAt(randomNumber)
End If
iconLabel.ForeColor = iconLabel.BackColor
Next
End Sub
Public Sub New()
InitializeComponent()
AssignIconsToSquares()
End Sub
les lettres correspondent à la police WEBDING
En rappelant la procédure il se produit l'exception "ArgumentOutOfRangeException",car je ne trouve pas comment redonner une valeur nulle à l'index et l'aide en ligne n'est pas facile à comprendre
voila
jean
-
Bonjour Jean,
Désolé je ne comprends rien (pas grand chose) ce code accepte d'être lancé avec un panne_layout mais je ne sais pas quoi appeler et comment ?
Option Explicit On Public Class Form1 Dim random As New Random Dim temporaryArray() As String = {"!", "!", "N", "N", ",", ",", "K", "K", "b", "b", "v", "v", "w", "w", "z", "z"} Dim icons As List(Of String) = temporaryArray.ToList() Public Sub New() InitializeComponent() AssignIconsToSquares() End Sub Sub AssignIconsToSquares() For Each Control In TableLayoutPanel1.Controls Dim iconLabel As Label = TryCast(Control, Label) If iconLabel IsNot Nothing Then Dim randomNumber As Integer = random.Next(icons.Count) iconLabel.Text = icons.ElementAt(randomNumber) icons.RemoveAt(randomNumber) End If iconLabel.ForeColor = iconLabel.BackColor Next End Sub End Class
Cordialement et bon courage ...
Joseph Attila PUSZTAY
EhJoe Logiciels Romans Ecrire -
-
-
Bonjour
Il y a beaucoup a étudier, en fait dans le programme que j'essaie, l'erreur se produit à la ligne :
iconLabel.Text=icons.ElementAt(randomNumber)
On nous dit que ArgumentOutOfRangeException se produit lorsqu'une méthode est appelée et qu'au moins un des arguments passés à la méthode n'est pas référencé Null( Nothing) et ne contient pas de valeur valide
C'est ce cas que je cherche à gérer
Merci pour cette aide
Jean
-
Bonjour,
Si vous obtenez ArgumentOutOfRangeException dans la ligne :
iconLabel.Text=icons.ElementAt(randomNumber)
Cela indique que la valeur de la variable randomNumber n'est pas comprise entre 0 et la taille - 1 de votre tableau icons. Par exemple si icons est un tableau de 5 éléments, alors randomNumber doit-être compris entre 0 et 4. Vérifiez donc la valeur obtenue dans randomNumber.
Cordialement
Gilles TOURREAU - MVP C# - MCTS ADO .NET 3.5 - MCPD Windows Developper 3.5 - Architecte .NET/Consultant/Formateur - http://gilles.tourreau.fr- Proposé comme réponse EhJoe dimanche 29 août 2010 18:09
- Marqué comme réponse Alex Petrescu jeudi 2 septembre 2010 09:37