Hola Foro
Estoy tratando de guardar los cambios a los titulos de un TreeView,
coloco edit en .T. y puedo cambiar el texto, luego para guardarlo uso el
evento OnEndLabelEdit pero :cText mantiene el texto anterior!!!!
Ejemplo:
// Guardo el texto original en la variable ::mAntes
METHOD ModulosBeginLabelEdit( oSender, oItem ) CLASS usuarios
::mAntes := oItem:cText
RETURN Nil
// Ahora quiero traer los cambios
METHOD ModulosEndLabelEdit( oSender, oItem ) CLASS usuarios
IF oItem:cText <> ::mAntes
//Si el cText anterior es diferente al editado
//Guarda el cambio en la tabla pero nunca pasa
//ya que siempre oItem:cText == ::mAntes
ENDIF
RETURN Nil
Como hago para traer el cTexto nuevo?
Gracias
uso XAILER 2.1.5 Beta (01/2010)
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
TreeView EndLabelEdit
-
- Mensajes: 141
- Registrado: Mar Sep 18, 2007 3:30 pm
TreeView EndLabelEdit
Andres,
tienes que guardar el cText del item antes de iniciar la edición:
LOCAL oItem := ::oTreeview:GetSelectedItem()
IF oItem != Nil
::mAntes := oItem:cText
oItem:Edit()
ENDIF
Saludos,
José Lalín
tienes que guardar el cText del item antes de iniciar la edición:
LOCAL oItem := ::oTreeview:GetSelectedItem()
IF oItem != Nil
::mAntes := oItem:cText
oItem:Edit()
ENDIF
Saludos,
José Lalín
-
- Mensajes: 141
- Registrado: Mar Sep 18, 2007 3:30 pm
TreeView EndLabelEdit
Hola Jose
Gracias por la respuesta, pero el mAntes lo esta haciendo bien es el
oItem:cText despues del edit que no actualiza
por ejemplo:
La primera linea en treeview dice "Primera", llamo el methodo edit() y
coloco "1. Primera" y luego en el evento OnEndLabelEdit() inspecciono la
variables y el resultado es
mAntes = "Primera"
y
oItem:cText = "Primera"
Ahora bien si llamo el methodo OnSelChanged() las variables cambian a
mAntes = "Primera"
y
oItem:cText = "1. Primera"
El problema es el cText despues de editar que parece que no lo actualiza
sino hasta despues del evento OnEndLabelEdit()
Muchas Gracias
Saludos
El 17/01/2011 11:59, José Lalín escribió:
>
> Andres,
>
> tienes que guardar el cText del item antes de iniciar la edición:
>
> LOCAL oItem := ::oTreeview:GetSelectedItem()
>
> IF oItem != Nil
> ::mAntes := oItem:cText
> oItem:Edit()
> ENDIF
>
> Saludos,
> José Lalín
>
Gracias por la respuesta, pero el mAntes lo esta haciendo bien es el
oItem:cText despues del edit que no actualiza
por ejemplo:
La primera linea en treeview dice "Primera", llamo el methodo edit() y
coloco "1. Primera" y luego en el evento OnEndLabelEdit() inspecciono la
variables y el resultado es
mAntes = "Primera"
y
oItem:cText = "Primera"
Ahora bien si llamo el methodo OnSelChanged() las variables cambian a
mAntes = "Primera"
y
oItem:cText = "1. Primera"
El problema es el cText despues de editar que parece que no lo actualiza
sino hasta despues del evento OnEndLabelEdit()
Muchas Gracias
Saludos
El 17/01/2011 11:59, José Lalín escribió:
>
> Andres,
>
> tienes que guardar el cText del item antes de iniciar la edición:
>
> LOCAL oItem := ::oTreeview:GetSelectedItem()
>
> IF oItem != Nil
> ::mAntes := oItem:cText
> oItem:Edit()
> ENDIF
>
> Saludos,
> José Lalín
>
TreeView EndLabelEdit
Andrés
no consigo reproducirlo. Envía un pequeño ejemplo para probarlo aquí.
Saludos,
José Lalín
no consigo reproducirlo. Envía un pequeño ejemplo para probarlo aquí.
Saludos,
José Lalín
-
- Mensajes: 141
- Registrado: Mar Sep 18, 2007 3:30 pm
TreeView EndLabelEdit
Lo mas facil es colocar en el ejemplo del directorio samplesTreeView
agrega lo siguiente
METHOD TVEndLabelEdit( oSender, oItem ) CLASS TForm1
MsgAlert(oItem:cText)
RETURN Nil
Modifica cualquier entrada del treeview y comprueba que cText no cambio,
ahora bien si ese es el comportamiento esperado, como hago para
como hago para obtener el string modificado?
Gracias
agrega lo siguiente
METHOD TVEndLabelEdit( oSender, oItem ) CLASS TForm1
MsgAlert(oItem:cText)
RETURN Nil
Modifica cualquier entrada del treeview y comprueba que cText no cambio,
ahora bien si ese es el comportamiento esperado, como hago para
como hago para obtener el string modificado?
Gracias
TreeView EndLabelEdit
Andrés,
creo que hay un bug en la declaración del evento OnEndLabelEdit. Cambia la
declaración del método por esta:
METHOD TVEndLabelEdit( oSender, oItem, cText ) CLASS TForm1
MsgAlert( cText )
RETURN Nil
También está mal la documentación, ya que debería indicar que devolviendo
.F. no se acepta el texto introducido. Por ejemplo, para evitar que se deje
en blanco:
METHOD TVEndLabelEdit( oSender, oItem, cText ) CLASS TForm1
MsgAlert( cText )
RETURN !Empty( cText )
Saludos,
José Lalín
creo que hay un bug en la declaración del evento OnEndLabelEdit. Cambia la
declaración del método por esta:
METHOD TVEndLabelEdit( oSender, oItem, cText ) CLASS TForm1
MsgAlert( cText )
RETURN Nil
También está mal la documentación, ya que debería indicar que devolviendo
.F. no se acepta el texto introducido. Por ejemplo, para evitar que se deje
en blanco:
METHOD TVEndLabelEdit( oSender, oItem, cText ) CLASS TForm1
MsgAlert( cText )
RETURN !Empty( cText )
Saludos,
José Lalín
-
- Mensajes: 141
- Registrado: Mar Sep 18, 2007 3:30 pm
TreeView EndLabelEdit
Ahora si funciona muchas gracias
El 17/01/2011 16:53, José Lalín escribió:
> Andrés,
>
> creo que hay un bug en la declaración del evento OnEndLabelEdit. Cambia
> la declaración del método por esta:
>
> METHOD TVEndLabelEdit( oSender, oItem, cText ) CLASS TForm1
> MsgAlert( cText )
> RETURN Nil
>
> También está mal la documentación, ya que debería indicar que
> devolviendo .F. no se acepta el texto introducido. Por ejemplo, para
> evitar que se deje en blanco:
>
> METHOD TVEndLabelEdit( oSender, oItem, cText ) CLASS TForm1
> MsgAlert( cText )
> RETURN !Empty( cText )
>
> Saludos,
> José Lalín
>
El 17/01/2011 16:53, José Lalín escribió:
> Andrés,
>
> creo que hay un bug en la declaración del evento OnEndLabelEdit. Cambia
> la declaración del método por esta:
>
> METHOD TVEndLabelEdit( oSender, oItem, cText ) CLASS TForm1
> MsgAlert( cText )
> RETURN Nil
>
> También está mal la documentación, ya que debería indicar que
> devolviendo .F. no se acepta el texto introducido. Por ejemplo, para
> evitar que se deje en blanco:
>
> METHOD TVEndLabelEdit( oSender, oItem, cText ) CLASS TForm1
> MsgAlert( cText )
> RETURN !Empty( cText )
>
> Saludos,
> José Lalín
>