ArrayList

01/10/2004 - 15:27 por Fabián Aguirre | Informe spam
Hola a todos!

Estoy comenzando con C# o recomenzando mejor dicho , y tengo un pequeño
problemita .

Tengo un ArrayList de objetos Point al que a medida que el usuario hace
click en un frame , se le va a agregando un nuevo objeto Point con las
coordenadas x, y del click . Ahora bien , con los puntos en el array
necesito dibujar un poligono, perno no he podido me sale error. este es el
codigo que ocupo...

//Decñaración del array list. a nivel de modulo
ArrayList pts = new ArrayList();

//Para dibujar el polígono
Point[] parray;



parray = pts.ToArray(); //Me da el error : Cannot implicity convert type
'object[]' to 'System.Drawing.Point[]' ¿Como entonces puedo convertir un
array de objetos en un array de Points?


if (pts.Count >= 3) {

//Crea polígono

g.DrawPolygon( new Pen(Color.Black) ,parray );


}

Un gran saludo y espero que me puedan ayudar

Fabián Aguirre R.
Coquimbo Chile

Preguntas similare

Leer las respuestas

#1 A.Poblacion
01/10/2004 - 15:39 | Informe spam
"Fabián Aguirre" wrote in message
news:%23G0$
parray = pts.ToArray(); //Me da el error : Cannot implicity convert type
'object[]' to 'System.Drawing.Point[]'



parray = (Point[]) pts.ToArray(typeof(Point));
Respuesta Responder a este mensaje
#2 Carlos Guzmán Álvarez
01/10/2004 - 15:45 | Informe spam
Hola:

parray = pts.ToArray();



Prueba con:

parray = (Point[])pts.ToArray(typeof(Point[]));






Un saludo

Carlos Guzmán Álvarez
Vigo-Spain
Respuesta Responder a este mensaje
#3 Fabián Aguirre
01/10/2004 - 15:50 | Informe spam
Muchas Gracias .

Fabián Aguirre R.
Coquimbo Chile
Respuesta Responder a este mensaje
#4 Guillermo guille
01/10/2004 - 16:00 | Informe spam
Prueba con esto:

Point[] parray = new Point[pts.Count];
Array.Copy(pts.ToArray(), 0, parray, 0, pts.Count);

foreach(Point p in parray)
...lo que sea ;


En teoría hay una sobrecarga de ToArray que te permitiría obtener un array del
tipo que quieras, pero al usarla, da el error de que al menos un elemento no es
del tipo adecuado...

Point[] parray;
parray = (Point[])pts.ToArray(typeof(Point[]));

Así que... tendrás que usar el Array.Copy que te he mostrado al principio.

Nos vemos.
Guillermo
Microsoft VB MVP desde 1997
Te invito a mi sitio dedicado al VB y más...
http://www.elguille.info/
http://www.mundoprogramacion.com/
(puede que el correo usado sea anti-spam)


"Fabián Aguirre" wrote in message
news:%23G0$
Hola a todos!

Estoy comenzando con C# o recomenzando mejor dicho , y tengo un pequeño
problemita .

Tengo un ArrayList de objetos Point al que a medida que el usuario hace
click en un frame , se le va a agregando un nuevo objeto Point con las
coordenadas x, y del click . Ahora bien , con los puntos en el array
necesito dibujar un poligono, perno no he podido me sale error. este es el
codigo que ocupo...

//Decñaración del array list. a nivel de modulo
ArrayList pts = new ArrayList();

//Para dibujar el polígono
Point[] parray;



parray = pts.ToArray(); //Me da el error : Cannot implicity convert type
'object[]' to 'System.Drawing.Point[]' ¿Como entonces puedo convertir un
array de objetos en un array de Points?


if (pts.Count >= 3) {

//Crea polígono

g.DrawPolygon( new Pen(Color.Black) ,parray );


}

Un gran saludo y espero que me puedan ayudar

Fabián Aguirre R.
Coquimbo Chile


Respuesta Responder a este mensaje
#5 Guillermo guille
01/10/2004 - 16:08 | Informe spam
po zí... yo probaba con un array en lugar de con un elemento, se ve que no
entendí bien lo que decía la ayuda... bueno, al menos Fabián verá dos formas de
hacer lo mismo...

Nos vemos.
Guillermo
Microsoft VB MVP desde 1997
Te invito a mi sitio dedicado al VB y más...
http://www.elguille.info/
http://www.mundoprogramacion.com/
(puede que el correo usado sea anti-spam)


"A.Poblacion" wrote in message
news:
"Fabián Aguirre" wrote in message
news:%23G0$
parray = pts.ToArray(); //Me da el error : Cannot implicity convert type
'object[]' to 'System.Drawing.Point[]'



parray = (Point[]) pts.ToArray(typeof(Point));


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida