Page 1 of 1

BBCode para Edit - Memo

PostPosted: Fri Jun 18, 2021 8:21 pm
by nlerdafehn
Hola foro,

Me preguntaba... Hay alguna forma de rellenar un EDIT o MEMO con información con BBCode (<b></b> para negrita, <u></u> para subrayado, etc...)?

O de cambiar interactivamente ciertas cosas dentro de un get multilinea?

El usuario final no va a modificar NADA, es solamente para mostrar un conjunto de mensajes. Osea que usar "<b>"+field->nombre+"</b> <i>escribio hace <u>"+ field->horas +"horas:</u> </i>"

Resultado esperado:

Nicolás nuevo escribio hace 3 horas:
¡Hola Mundo! Este es mi ejemplo
----------------------------------------------------------------------------------------
Pedro nuevo escribio hace 1 hora:
¡Hola! ¿Como estas?
----------------------------------------------------------------------------------------

Re: BBCode para Edit - Memo

PostPosted: Fri Jun 18, 2021 11:33 pm
by cnavarro
Puedes plantearte usar un control RICHEDIT, aunque evidentemente tendrías que realizar en la cadena del mensaje un STRTRAN de los tags que te vienen del BBCODE a los tags que utiliza el RICHEDIT.

Re: BBCode para Edit - Memo

PostPosted: Mon Jun 21, 2021 9:54 am
by nageswaragunupudi
An easy way is the save it as a temporary HTML file and view it as HTML.

Example:
Code: Select all  Expand view
  local cText := "Normal <b>Bold text</b> <i>this is italics</i> again normal"
   local oDlg, oActivex

   HB_MEMOWRIT( "temp.html", "<html><body>" + cText + "</body></html>" )

   DEFINE DIALOG oDlg SIZE 300,300 PIXEL TRUEPIXEL

   @ 20,20 ACTIVEX oActivex PROGID "Shell.Explorer.2" SIZE 260,260 OF oDlg

   oDlg:bInit := { || oActivex&#058;Navigate2( TrueName( "temp.html" ) ) }

   ACTIVATE DIALOG oDlg CENTERED
 


Image

oDlg:bInit := { || oActivex:Navigate2( TrueName( "temp.html" ) ) }

Re: BBCode para Edit - Memo

PostPosted: Tue Jun 22, 2021 2:03 pm
by nlerdafehn
Mr Rao.,

Thanks a lot, it's what I'm looking for!