Vous cherchez quelque chose comme:Comment faire une boucle à travers des points dans un system.drawing.rectangle dans vb.net
rect dim comme system.drawing.rectangle
Pour chaque point rect Debug.Print (point.name, point.value) Suivant
Vous cherchez quelque chose comme:Comment faire une boucle à travers des points dans un system.drawing.rectangle dans vb.net
rect dim comme system.drawing.rectangle
Pour chaque point rect Debug.Print (point.name, point.value) Suivant
Vous pouvez écrire une méthode d'extension qui vous renvoie un tableau des points que vous souhaitez. Je ne fais pas vraiment VB, mais un exemple en C# serait quelque chose comme ...
public static class RectangleExtensions
{
public static Point[] GetPoints(this Rectangle rect)
{
return new Point[]
{
new Point(rect.Left, rect.Top),
new Point(rect.Right, rect.Top),
new Point(rect.Right, rect.Bottom),
new Point(rect.Left, rect.Bottom)
};
}
}
public class example
{
public void ExampleMethod()
{
Rectangle rect = new Rectangle();
foreach (Point point in rect.GetPoints())
Console.WriteLine(point.ToString());
}
}
Function GetAllPoints(ByVal r As Rectangle) As Point()
Return { _
New Point(r.Left, r.Top), _
New Point(r.Right, r.Top), _
New Point(r.Left, r.Bottom), _
New Point(r.Right, r.Bottom) _
}
End Function
(Suite de la ligne ajoutée à soutenir les anciennes versions de VB.NET)
Vos x et y ne sont-ils pas retournés? –
Oui, c'est embarrassant. Fixé. – Larsenal
Merci, Je peux l'utiliser mais je tiens toujours à le faire sans ma propre fonction. C'est l'objet rectangle de l'espace de noms system.drawing - comment peut-il y avoir un moyen intégré de faire défiler les points? – pghcpa
http://msdn.microsoft.com/fr-fr/library/system.drawing.rectangle_members.aspx –
Vérifiez que vous-même. Il n'y a pas de méthode "GetPoints" intégrée ou quoi que ce soit. Pourquoi y en aurait-il? Ce n'est pas vraiment une opération particulièrement courante. –