Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Desarrollo en Delphi para Android
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy


 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-09-2016
jhonalone jhonalone is offline
Miembro
 
Registrado: sep 2007
Ubicación: Madrid
Posts: 547
Poder: 17
jhonalone Va por buen camino
Cambiar colores en cabecera de TStringGrrid

Hola de nuevo, amigos.

Tengo algunas cuestiones sin resolver en el foro y creo que es porque hago propuestas muy raras. Pero me gusta personalizar mis proyectos.

La de hoy se refiere al THeader de un TStringGrid.

Con los colores que trae por defecto, se distingue muy poco las filas del encabezado en algunos dispositivos y por éso me he planteado cambiar los colores del texto y del fondo de la cabecera del TStringGrid.

He buscado y rebuscado en el foro, en Google y en StackOverflow sin éxito.

Quizá pido algo que no se puede hacer, aunque en tiempo de diseño lo he intentado con los .style que vienen en el paquete. Con esto he tenido dos problemas, bueno tres (el tercero es mi desconocimiento de este sistema de personalizar). Los otros dos son:

1.- No sé cómo personalizar la cabecera sola. (Si es que se puede)
2.- Cuando cambio el estilo completo, se ve bien en tiempo de diseño, pero al ejecutar el programa en la tableta, no se ven los colores del estilo, sino los originales.

Mi intención es cambiar solamente los colores de la cabecera, Fondo y Texto.

He visto en la ayuda que el THeader tiene los distintos objetos (hijos) representados por Header.THeaderItems, los cuales tienen algunas propiedades como Font, FontColor, Header... que podrían servirme con las modificaciones adecuadas, pero tengo un problema anterior, no sé como acceder al Header del TStringGrid.

En el foro he encontrado algo... esto y también esto otro
pero se refiere a Windows y yo estoy en Firemonkey (Android/Ios), y no sé como adaptarlo.

También he estado probando con esto:
Código Delphi [-]
procedure TEditaAvis.Memo1ApplyStyleLookup(Sender: TObject);
var Obj: TFmxObject;
    Rectangle1: TRectangle;
begin
     Obj := StringGrid1.FindStyleResource('background');
     if Obj <> nil then
     begin
          TControl(Obj).Margins   := TBounds.Create(TRectF.Create(2, 2, 2, 2));
          Rectangle1              := TRectangle.Create(Obj);
          Obj.AddObject(Rectangle1);
          Rectangle1.Align        := TAlignLayout.Contents;
          Rectangle1.Fill.Color   := claLightgreen;
          Rectangle1.Stroke.Color := claNull;
          Rectangle1.HitTest      := False;
          Rectangle1.SendToBack;
     end;
end;

Modificando "Obj := Memo1.FindStyleResource('background');", para intentar conseguir(sin éxito) el fondo del THeader.

Bueno, resumiendo: os cuento todo esto, para que no penséis que no me lo he trabajado. Llevo 3 días sólo con esto.

Agradecería cualquier solución. Y si alguien sabe que no existe... por favor, que me lo diga para no seguir trabajando en vano.

Saludos a todos y gracias de antemano.

Última edición por jhonalone fecha: 12-09-2016 a las 14:09:39.
Responder Con Cita
 



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
Ayuda 'Cambiar colores' Cristalero OOP 9 08-04-2009 17:25:18
Tip: Como cambiar los colores del IDE mamcx Varios 8 09-02-2009 23:42:31
Cambiar colores en runtime Minio Gráficos 1 15-04-2008 23:00:03
Cambiar colores aleatoriamente donchuma OOP 3 21-10-2007 14:53:31
Cambiar colores a la imagen maravert Gráficos 3 07-03-2005 09:57:44


La franja horaria es GMT +2. Ahora son las 12:44:42.


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