SoloCodigo

Programación General => Visual FoxPro => Mensaje iniciado por: razx en Miércoles 6 de Febrero de 2008, 03:53

Título: Arreglo
Publicado por: razx en Miércoles 6 de Febrero de 2008, 03:53
o0la pues tengo una pregunta, tengo un editbox y pues digamos ke el usuario escribe lo ke sea y pues tiene ke transformar el texto a upper y lower bueno lo ke hice fue lo siguiente; en un array meto todas las letras y las transformo y el problema sta en ke no puedo mostrar todo el contenido del array en el editbox no se si exista un comando mas o menos es esto lo ke kiero:

el usuario tecleo en el editbox: 1 2 3 4

el array se llena con los datos ke tecleo
array(1,2,3,4)

el editbox debe regresar lo siguiente

1 2 3 4

eso es todo muchas gracias =)
Título: Re: Arreglo
Publicado por: arielb en Jueves 7 de Febrero de 2008, 02:32
Hola, bueno la respuesta a tu pregunta si hay que son lower() y upper(). Pero tu problema actual puede ser que no están redimensionando el arreglo con el nuevo total de caracteres, este es un ejemplo de como manejar arreglos.

Código: Text
  1. textbox1= "Juez"
  2. longitud = Len(textbox1)
  3. Dimension mArreglo(longitud)
  4. For i = 1 To longitud Step 1
  5.   mArreglo[i] = Substr(textbox1,i,1)
  6.   Messagebox(mArreglo[i])
  7. Endfor
  8.  
  9.  

Código: Text
  1. var1 = lower("JUEZ")
  2. var2 = upper("juez")
  3.  

Bueno creo que eso era tu pregunta si no avisas.
Título: Re: Arreglo
Publicado por: razx en Jueves 7 de Febrero de 2008, 04:07
gracias por la ayuda, pero lo que realmente kiero hacer es desplegar el contenido del array en el editbox

ejemplo:

public vLongitud,vCadena
STORE ALLTRIM(thisform.edit1.value) TO vCadena
vLongitud = LEN(ALLTRIM(thisform.edit1.Value))

array miArreglo(vLongitud)
i=1
DO WHILE i <= vLongitud
   STORE SUBSTR(vCadena,i,1) TO miArreglo(i)
   i=i+1
ENDDO
i=1   
DO WHILE i<= vLongitud
   IF MOD(i,2) = 0
      STORE UPPER(miArreglo(i)) TO miArreglo(i)
   ELSE
      STORE LOWER(miArreglo(i)) TO miArreglo(i)
   ENDIF
   i=i+1
enddo      

*******************

lo ke kiero hacer es ke aparezca lo que se ingreso en el editbox ya modificado y ke se encuentra en el arreglo.. espero puedan ayudarme =)
Título: Re: Arreglo
Publicado por: arielb en Viernes 8 de Febrero de 2008, 04:23
existen las funciones isupper() y islower()

creo que esto te puede ayudar a guiarte
Código: Text
  1. Public vLongitud,vCadena
  2. Store Alltrim(Thisform.edit1.Value) To vCadena
  3. vLongitud = Len(Alltrim(Thisform.edit1.Value))
  4. thisform.edIT1.Value = &#34;&#34;
  5.  
  6. Dimension miArreglo(vLongitud)
  7. i=1
  8. Do While i &#60;= vLongitud
  9.   Store Substr(vCadena,i,1) To miArreglo(i)
  10.   i=i+1
  11. Enddo
  12. If (Isupper(miArreglo[1]))
  13.   For i = 1 To vLongitud Step 1
  14.     Store lower(miArreglo[i]) To miArreglo[i]
  15.     thisform.eDIT1.Value = thisform.eDIT1.Value+  miArreglo[i]
  16.   Endfor
  17. Else
  18.   For i = 1 To vLongitud Step 1
  19.     Store upper(miArreglo[i]) To miArreglo[i]
  20.     thisform.eDIT1.Value = thisform.eDIT1.Value+  miArreglo[i]
  21.   Endfor
  22. Endif
  23.  
  24.