ahtonio   19-08-2020, 22:28
#1
He estado "trasteando" con el componente textedit de gb.qt4.ext porque lo vi en una instalación antigua que tenía de ubuntu 12.04 y que venía como ejemplo y parecía sencillo.
En un toggleButton de negrita por ejemplo ponías en el evento click el codigo:
Código:
Public Sub ToggleButton1_Click()

    edita.Format.Font.Bold = Last.Value

End

Y desde ese momento  (o el texto seleccionado en el control) se veía en negrita.
Si volvías a pulsar, dejaba de editar en negrita.

Este control todavía existe pero parece que esta "deprecated" con la recomendación de usar el TextEditor (gb.form.editor)

La pregunta es si alguien sabe como hacer esto, que con un botón se podía poner el texto en negrita, italica, alienar como quieras y más cosas en el nuevo control?
Desde luego el nuevo control tiene muchísimas mas funciones, es mucho más completo, pero no veo como hacer estas cosas sencillas.
Puedes activar vista previa, ver números de linea y demás pero lo de resaltar el texto seleccionado o en adelante escribir...
Por supuesto no se como obtener el texto "enriquecido" supongo que con html para enviarlo en un mail. Actualmente tengo un textarea que visualiza el texto en un textlabel pero es una solución muy poco profesional.

Agradecido si alguien sabe como manejarlo.

He pensado en mirar en el código fuente del IDE de gambas3 pero no lo encuentro. ¿Hay que descargarlo?

Otra vez GRACIAS!

Ahtonio

Edito: TextEdit sigue existiendo en gb.qt4.ext y en gb.qt5.ext lo que pasa es que es un poco libiano en documentación (Format en qt5 no tiene ayuda) y en qt4 poca y tendré que hacer pruebas varias para ver como sacar lo que puede dar. Gracias de todos modos al que lo haya revisado y sepa algo del manejo de este control.
Última modificación: 19-08-2020, 22:37 por ahtonio. Razón: Confundidos los controles.
gambafeliz   20-08-2020, 09:57
#2
Puedes crear muchas formas de hacer esto que dices, te pongo una que se me ocurre por la marcha. Te lo describo:

1. Pon botones para crear varios estados, ejemplo: Botón Negrita, Botón Cursiva, etc.
2. Al pulsar el botón como hemos planeado tendrá dos estados, "Negrita" o "no Negrita" en su interior pones un IF ELSE para decidirlo. Y creas una variable global de String[]
3. La variable global String[] va acumular una lista de estados. Al pulsar el botón negrita la variable guarda "<b>" si pulsa sobre el botón cursiva, guarda en la variable "<i>" por lo tanto ahora hay ["<b>", "<i>"], edita la variable según necesites y así guardas los estados en cualquier caja de texto que necesites.

Esto es un ejemplo, en los IF ELSE también puedes cambiar el icono del botón para que sepas que esta activa la negrita o no, etc.

Hay miles de formas para hacerlo, esta es más independiente, pero la mejor sería, la de la caja de texto de esté foro por ejemplo, donde yo ahora te escribo. Piensa justo esta y seguro que te llegará la inspiración.

Saludos.
ahtonio   20-08-2020, 13:52
#3
(20-08-2020, 09:57)gambafeliz escribió: Gracias. Me da que pensar. Lo miraré como alternativa.
tincho   20-08-2020, 15:36
#4
Antonio: yo uso el control TextEditor pero para ver código de gambas no para texto enriquecido. Lo que tu preguntas, si no comprendo mal, es como escribir texto en negrita en una parte de un párrafo con dicho control, es decir texto enriquecido.
Este control parece estar orientado a código mas que a texto enriquecido y de momento no tengo experiencia en el uso como lo intentas tu, así que no se siquiera si es posible hacer lo que dices.
Por otro lado, existen unos controles que hizo Shordi para editar texto enriquecido, te dejo los enlaces por si te sirve de algo.
https://foro.gambas-es.org/viewtopic.php...ght=editor
https://foro.gambas-es.org/viewtopic.php...ght=editor
En este se trata el control TextEdit (gb.qt5.ext)
https://foro.gambas-es.org/viewtopic.php...ght=editor
Voy a crear otro tema con las indicaciones para descargar el código fuente de gambas (y el ejemplo TextEdit en tu caso)
Slaludos.

1 Saludo.
  
Usuarios navegando en este tema: 4 invitado(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.