Problema con el FOR

Problema con el FOR

Postby new_indika » Tue Feb 27, 2007 11:27 am

Hola! Este es mi primer post en FiveTechSoft. Hace un tiempo que soy asiduo a el y he visto muchos de vuestros ejemplos/problemas y me han ayudado en la programación. Saludos.

Mi duda es, (creo que sencilla), pero no doy con la solución. Os posteo el código.

FOR i := 1 TO 6
oFont[i]:End()
NEXT

Supongamos que tengo seis fuentes, y quiero cerrarlas con un FOR en el que se sustituya [i] por el valor que va tomando, es decir, para que hiciese lo mismo que este trozo de codigo.

oFont1:End()
oFont2:End()
oFont3:End()
oFont4:End()
oFont5:End()
oFont6:End()

Gracias por adelantado!
new_indika
 
Posts: 13
Joined: Mon Feb 26, 2007 10:00 am
Location: Jerez de la Frontera

Postby Kleyber » Tue Feb 27, 2007 11:32 am

Hola new_indika,

Antes que nada bienvenido al foro.

Si lo entendi bien, una sugerencia seria:

Code: Select all  Expand view
for nX:=1 to 6
     cX:=str(nX,1)
     oFont(nX):End()
next

Espero te sirva,

Saludos
Kleyber Derick

FWH / xHb / xDevStudio / SQLLIB
User avatar
Kleyber
 
Posts: 581
Joined: Tue Oct 11, 2005 11:28 am
Location: São Luiz, Brasil

Postby Antonio Linares » Tue Feb 27, 2007 12:08 pm

AEval( { oFont1, oFont2, oFont3, oFont4, oFont5, oFont6 }, { | o | o:End() } )
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42071
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby new_indika » Tue Feb 27, 2007 12:34 pm

Muchas gracias!
new_indika
 
Posts: 13
Joined: Mon Feb 26, 2007 10:00 am
Location: Jerez de la Frontera

Postby Biel EA6DD » Tue Feb 27, 2007 2:57 pm

Otra seria definir los fonts dentro del array, y luego cerrar con el bucle FOR ... NEXT
Code: Select all  Expand view
LOCAL aFont[6]

DEFINE FONT aFont[1] ...
...
FOR i := 1 TO 6
   aFont[i]:End()
NEXT
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Biel EA6DD
 
Posts: 682
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca

Re: Problema con el FOR

Postby ACC69 » Tue Feb 27, 2007 3:21 pm

new_indika wrote:Hola! Este es mi primer post en FiveTechSoft. Hace un tiempo que soy asiduo a el y he visto muchos de vuestros ejemplos/problemas y me han ayudado en la programación. Saludos.

Mi duda es, (creo que sencilla), pero no doy con la solución. Os posteo el código.

FOR i := 1 TO 6
oFont[i]:End()
NEXT

Supongamos que tengo seis fuentes, y quiero cerrarlas con un FOR en el que se sustituya [i] por el valor que va tomando, es decir, para que hiciese lo mismo que este trozo de codigo.

oFont1:End()
oFont2:End()
oFont3:End()
oFont4:End()
oFont5:End()
oFont6:End()

Gracias por adelantado!


Hola amigo prueba con esto:
AEval( oFont,{|o| o:End()} )

o de otra manera asi:
FOR X=1 TO 8
oFont[X]:End()
NEXT X... BUENO ES IGUAL, PERO A MI ME FUNCIONA
ACC69
 
Posts: 632
Joined: Tue Dec 12, 2006 7:34 pm

Postby Ruben Fernandez » Wed Feb 28, 2007 2:25 am

Amigo:

FOR i := 1 TO 6
oFont[i]:End()
NEXT

Tienes dos puntos en for i :=
debes sacarle los 2 puntos.

Saludos

Ruben Fernandez.
Ruben Fernandez
 
Posts: 366
Joined: Wed Aug 30, 2006 5:25 pm
Location: Uruguay

Postby joseluisysturiz » Wed Feb 28, 2007 4:21 am

No seria mas practico si creas un array con los font y luego llamas el que quieras...? aFonts := { {Font1, font2, Font3, Fontn} }, nose, digo.
User avatar
joseluisysturiz
 
Posts: 2064
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 37 guests