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.

Problema inicializacion oFont en TDbRichEdit

Foro de Xailer profesional en español
User avatar
bingen
Posts: 425
Joined: Mon Jul 07, 2014 8:17 pm
Location: Bilbao
Contact:

Problema inicializacion oFont en TDbRichEdit

Postby bingen » Wed May 13, 2020 9:28 am

Tenemos este código que funciona perfectamente en los objetos tRichEdit pero que al cambiar algunos de ellos por TdbRichEdit ya no funcionan
En un Objecto TRichEdit ( oDescripcion ) y en su método create leemos con una función ( GetConfiguracion ) una fuente inicial grabada por nombre ( fontnombreart ), creamos una fuente ( oFontNombreArt ) y se la asignamos al control RichEdit.
Esto no funciona en un objeto tDBRichEdit.


METHOD DescripcionCreate( oSender ) CLASS TFrmreferencias
local cFontNomArt:="",oFontNombreArt

//--- Fuente Nombre Articulo ------------------------------------------------
cFontNomArt := GetConfiguracion("fontnombreart") //Leer la funte grabada
if !empty(cFontNomArt)
WITH OBJECT oFontNombreArt := tFont():New() //Crear fuente
:RestoreFromText(cFontNomArt)
END WITH
::oDescripcion:oFont := oFontNombreArt //Asignacion fuente (no funciona)
oFontNombreArt:Destroy()
Endif
Return NIl
BiSoft Desarrollo de software profesional
http://www.bisoft.es
User avatar
ignacio
Site Admin
Posts: 8651
Joined: Mon Apr 06, 2015 8:00 pm
Location: Madrid, Spain
Contact:

Re: Problema inicializacion oFont en TDbRichEdit

Postby ignacio » Wed May 13, 2020 9:53 am

Buenos días,

Sería bueno tener un sencillo ejemplo. No obstante, y s simple vista, no parece que vaya a funcionar pues destruyes el Font que acabas de asignar. Simplemente elimina la línea en la que destruyes el font.

Saludos
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
http://www.xailer.com
User avatar
bingen
Posts: 425
Joined: Mon Jul 07, 2014 8:17 pm
Location: Bilbao
Contact:

Re: Problema inicializacion oFont en TDbRichEdit

Postby bingen » Mon May 18, 2020 9:49 am

Ok . Gracias
La solución está en hacer un clone() del fuente
//--- Fuente Nombre Articulo ------------------------------------------------
cFontNomArt := GetConfiguracion("fontnombreart") //Leer la funte grabada
if !empty(cFontNomArt)
WITH OBJECT oFontNombreArt := tFont():New() //Crear fuente
:RestoreFromText(cFontNomArt)
END WITH
::oDescripcion:oFont := oFontNombreArt:Clone() //Asignacion fuente (así si funciona)
oFontNombreArt:Destroy()
Endif
Return NIl
BiSoft Desarrollo de software profesional
http://www.bisoft.es
User avatar
ignacio
Site Admin
Posts: 8651
Joined: Mon Apr 06, 2015 8:00 pm
Location: Madrid, Spain
Contact:

Re: Problema inicializacion oFont en TDbRichEdit

Postby ignacio » Mon May 18, 2020 10:18 am

Es código innecesario. En vez de clonar y luego destruir. Simplemente no destruye.

Saludos
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
http://www.xailer.com

Return to “Spanish”