![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Vcl/FMX: Resaltar texto parcialmente
Hola a todos
Este truco sirve cuando por ejemplo mostramos datos en un Grid y queremos resaltar parte del texto (color, negrita, etc). Esta muy bueno cuando hacemos una busqueda parcial, y queda resaltado que parte del string es la que coincide con la busqueda. El efecto buscado seria, si busco Juan que me resalte asi: Juan Juan Carlos Pedro Juan AlgoJuanOtraCosa El codigo en realidad es obra de ecfisa, lo interesante es que el algoritmo es aplicable facilmente a casi cualquier clase, porque todo se basa en codigo RTL para manipulacion de strings, y luego el pintado es usando TCanvas. Es cierto que hay algunas pequeñas diferencias entre el manejo de Canvas Vcl y el de FMX Si yo no he entendido mal, lo que hace Daniel es ir dibujando con el canvas de a "trocitos" el string, dividiendo el mismo en tres partes. En el codigo que voy a usar de ejemplo, simplemente voy a resaltar usando negrita para la parte que coincide y normal para el resto El codigo para Vcl lo pueden encontrar en el hilo original Para FMX, las pruebas las hice con un componente TStringGrid. Es necesario que tengamos TStringGrid.DefaultDrawing a False Luego simplemente metemos un hook para el evento TStringGrid.OnDrawColumnCell Solo hay unas cosas mas que se deben notar:
Efecto conseguido en un TGrid FMX: ![]() Efecto conseguido en un TDBGrid Vcl ![]() |
#2
|
||||
|
||||
![]() ![]() ![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
||||
|
||||
Hola,
¡Muchas gracias por compartirlo Agustín! ![]() |
#4
|
||||
|
||||
Hola Agustín.
Muchas gracias por el aporte ![]() Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#5
|
|||
|
|||
Ejemplo Vcl/FMX: Resaltar texto parcialmente
Hola a todos, se que este tema ya lleva un tiempo, pero hay alguien que tenga un ejemplo, soy algo novato y no se como ejecutarlo y me aparece muchos errores.
Mil gracias Última edición por Jose Roman fecha: 29-12-2022 a las 02:59:11. |
#6
|
||||
|
||||
Cita:
Este es el foro de Trucos, no es para resolver problemas. Gracias ![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
![]() |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
ClientDatasets, filtros y "LIKE" que filtra parcialmente, como se le da la gana | Walterio | Providers | 2 | 17-04-2012 15:06:49 |
Resaltar En Negrita Una Texto De Una Linea De Un Tmemo | ingmichel | Internet | 1 | 28-11-2009 12:34:53 |
Como poner en un hint texto parcialmente en negrita | JF Sebastian | Varios | 2 | 17-01-2007 16:14:07 |
Locate no buscar parcialmente, por que? | URBANO | Conexión con bases de datos | 13 | 14-10-2005 20:14:22 |
resaltar lineas | cesarjbf | OOP | 4 | 28-09-2003 16:44:10 |
![]() |
|