Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-09-2006
Avatar de Alexander
Alexander Alexander is offline
Miembro
 
Registrado: may 2004
Posts: 235
Poder: 21
Alexander Va por buen camino
Cool Como poner color a una palabra buscada

Hola a todos.

Trabajo con los componentes de DevExpress ver 5.0. cxGrid.
Hago una consulta que me busca una palabra en la base de datos, me da y me muestra el resultado perfectamente.

Como puedo hacer para poner de otro color la palabra que se buscó?.

Que cuando aparezca el resultado, se pueda ver la palabra resaltada o de otro color o con background diferente.

Muchas gracias por sus comentarios

Alexander.
__________________
Cielos azules
Responder Con Cita
  #2  
Antiguo 11-09-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
En donde te presenta la palabra buscada?
En un Edit, Label, Grid, Memo?
Hay diferentes formas de dar color a estos componentes, pero la mayoria tienen la obcion del color en el ispector de objetos en Font.
Espero sea esto lo que preguntaste.
Saludos
Responder Con Cita
  #3  
Antiguo 11-09-2006
Avatar de Alexander
Alexander Alexander is offline
Miembro
 
Registrado: may 2004
Posts: 235
Poder: 21
Alexander Va por buen camino
Cool No se si te entendí

La búsqueda me la da en la grilla cxGrid.

Actualmente la respuesta me la da en un campo memo.

Puede mostrarme en la grilla muchas coincidencias de la palabra buscada desde 1 registro hasta x.

Es algo como por ejemplo, busco la palabra "Contrato"

y me muestra Ubicación, Titulo, y Resumen.

Ubicación Titulo Resumen
12x6 Contrato 1234 de 2.005 Especificaciones del contrato suscrito por ...

Que la palabra puede estar en el titulo y/o en el resumen, pero en alguno de los dos está.

Espero sirva de ayuda.

Alexander.
__________________
Cielos azules
Responder Con Cita
  #4  
Antiguo 11-09-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
No me hagas mucho caso, pero yo haria que la consulta me la devolviera en cierta condicion con un If x= XX then grid1.columns.Color.clRed
O algo asi, creo que si la consulta va condicionada de una vez al color deveria funcionar, no se pruebalo.
saludos
Responder Con Cita
  #5  
Antiguo 11-09-2006
Avatar de Alexander
Alexander Alexander is offline
Miembro
 
Registrado: may 2004
Posts: 235
Poder: 21
Alexander Va por buen camino
No es asi

No quiero pintar la columna, quiero pintar solamente la palabra.

Ejemplo:

Dato a buscar: 2534

Respuesta:

Registro 027 de contrato 2534 donde se resuleve ...

Gracias por sus comentarios

Alexander
__________________
Cielos azules
Responder Con Cita
  #6  
Antiguo 12-09-2006
Avatar de Bicho
[Bicho] Bicho is offline
Miembro Premium
 
Registrado: jul 2003
Ubicación: Inca - Mallorca
Posts: 1.776
Poder: 22
Bicho Va por buen camino
Hola, no se si yo al final me he aclarado con lo que buscabas, pero lo que entendí es que el resultado que te lanza la búsqueda lo hace sobre un dbgrid y tú quieres resalta el texto de una columna en concreto, no es así?
Si es así prueba a revisar este hilo. Básicamente se trata de jugar con el canvas del dbgrid en el evento ondrawcell y alí modificar el color de la fuente de la columna que deseas.

Espero te sirva,

Saludos
Responder Con Cita
  #7  
Antiguo 12-09-2006
Avatar de Alexander
Alexander Alexander is offline
Miembro
 
Registrado: may 2004
Posts: 235
Poder: 21
Alexander Va por buen camino
Cool Esa no es

Bicho gracias. Más sin embargo no es lo que busco. Allí pintan la celda especifica.

Yo necesito pintar de otro color, solo una palabra del texto completo.

Gracias

Alexander
__________________
Cielos azules
Responder Con Cita
  #8  
Antiguo 12-09-2006
Avatar de Alexander
Alexander Alexander is offline
Miembro
 
Registrado: may 2004
Posts: 235
Poder: 21
Alexander Va por buen camino
He logrado esto

Haciendo pruebas helogrado hacer lo siguiente:

Paso el texto a un RichEdit y en este si se puede resaltar la palabra, así:

Código Delphi [-]
  procedure ResaltaPalabraEnRE(RichEdit:TRichEdit;Palabra:string);
     var
       Texto    : string;
       Posicion : integer;
     begin
       texto := RichEdit.Lines.Text;
       repeat
         Posicion:=ansipos(palabra,texto);
         Richedit.SelStart:=Posicion-1;
         Richedit.SelLength:=Length(Palabra);
         Richedit.SelAttributes.Color:=clred;
         texto[Posicion+1]:=Chr(255);
         Posicion:=ansipos(palabra,texto);
       until (Posicion=0);
     end;

Como podré hacer esto mismo pero con un DBRichEdit o con DBGrid.

Gracias

Alexander
__________________
Cielos azules
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como hallar y reemplazar una palabra por otra en un memo? JuanErasmo C++ Builder 1 24-06-2006 02:15:01
como filtrar en un dbgrid por una palabra a buscar mrmago Conexión con bases de datos 10 30-12-2005 19:52:25
Cambiar de color a una palabra (ExpressQuantum Grid v.5) Alexander Varios 0 06-05-2005 19:32:20
Poner color background del form cuando pierde el foco Cabanyaler Gráficos 4 25-11-2004 08:32:03
Poner color a un TPanel con XP manifest jollodel Gráficos 1 11-08-2004 12:11:23


La franja horaria es GMT +2. Ahora son las 14:17:14.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi