FoxPro/Visual FoxPro - texto1 vs text1

   
Vista:

texto1 vs text1

Publicado por OmarB omarbeber@termasvillaelisa.com (3 intervenciones) el 29/05/2014 14:15:43
Hola al Foro.
estoy realizando una aplicacion con VFp 9.0 y tengo un control grid. Para crear un evento en el la columna1 he definido
BINDEVENT(thisform.grid1.column1.texto1, "click", thisform, procesox)

cuando lo corro en la aplicacion 10 puntos pero al compilarlo necesito cambiarlo por

BINDEVENT(thisform.grid1.column1.text1, "click", thisform, procesox)

es un problema de lenguaje pero no puedo dar con la tecla asi que agradeceria enormemente su ayuda

Atte
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

texto1 vs text1

Publicado por Fidel José (558 intervenciones) el 29/05/2014 20:07:46
El componente de una columna de un grid que es CurrentControl, es "Text1" y no "Texto1".
Para usar "Texto1" (no comprendo el motivo), tienes que crear una clase (biblioteca vcx) basada en textbox con las características propias para ser soportado en una columna de grid y cuando levantas el grid, a cada columna le agregas tu clase con el nombre que quieras, por ejemplo "Texto1" y cambias el CurrentControl de cada columna para la clase agregada. No necesitas borrar el Text1 por default. (La clase tendría en su click la llamada al proceso o el proceso en sí).

Ahora bien, BindEvent() te permite trabajar con un grid desentendiéndote de las clases. O utilizar clases te permite trabajar con un grid desentendiéndote de BindEvent().

Mi consejo: no renombres los controles de las columnas ni las columnas. Usa text1, header1 y para tratar con las columnas utiliza el objeto Columns(). Thisform.grid1.columns[1].Text1
Acá el cDelegate se asigna a todas las columnas.
With thisform.Grid1
For ni=1 to .ColumnCount
BINDEVENT(.columns[ni].text1, "click", thisform, "procesox" ) && fijate que "procesox" debe ir encomillado
endfor
Endwith
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

texto1 vs text1

Publicado por Omar Beber omarbeber@termasvillaelisa.com (3 intervenciones) el 27/06/2016 19:52:33
Sigo, despues de 2 años, con el problema de "Texto1" y "Text1".
No logro encontrar donde esta el problema ya que corriendo la aplicacion desde VFP funciona con el currencontrol Texto1 pero al compilarlo y pasarlo a un .exe debo cambiar en cada bindevent .texto1 por .text1
Creo que es algo relacionado con el lenguaje (Inges- español) del fox.
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

texto1 vs text1

Publicado por Fidel José (319 intervenciones) el 27/06/2016 22:36:59
Pues lo hubieras dicho antes.
Con esto solucionas el problema, no importa como se llama el currentcontrol de la columna:

1
2
3
4
5
* Suponiendo que el Textbox está en la columna n
* y que el control grid se llama "grdGrilla"
n = 7
lcCurrentControl = thisform.grdGrilla.columns(n).CurrentControl
BINDEVENT(thisform.grdGrilla.Columns(n).&lcCurrentControl,"Click",thisform,"procesox")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

texto1 vs text1

Publicado por Omar Beber (3 intervenciones) el 29/06/2016 13:20:45
Muchisimas gracias
Lo probare. Ha sido Ud. muy amable y valoro su predisposicion para brindar consejos a quines por satisfaccion personal estamos en esto de la programacion.
Atte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar