Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Imagen en TColumn (https://www.clubdelphi.com/foros/showthread.php?t=74710)

Pedro-Juan 06-07-2011 18:59:05

Imagen en TColumn
 
Hola a tod@s.

¿Alguien sabe cómo conseguir esos triangulitos que aparecen en las cabeceras de los TColumn en un Grid para indicar la ordenación?

He conseguido algunas imágenes, pero me sale un churro (BMP). Las he convertido a PNG, pero sale un churro.

También lo he intentado con imágenes de flecha arriba/abajo de 16x16, pero queda muy grande (llegan hasta el borde superior e inferior de la cabecera).
Las he reducido con una herramienta de gráficos, pero sale otro churro.

Cuando no sale un churro, no son transparentes...:(

Utilizo componentes externos a Delphi (AlphaControls). D7.

Muchas gracias y un saludo.

Casimiro Noteví 06-07-2011 20:21:41

Es un tema que se ha tratado varias veces, a ver si lo encuentro...

Pedro-Juan 06-07-2011 22:15:56

Hola.

He buscado, pero de las imágenes no he encontrado nada.

Un saludo.

Casimiro Noteví 07-07-2011 00:45:47

Sé que se ha tratado en algunos hilos, aunque no lo encuentro, también sé que lo he hecho en varias ocasiones, aunque últimamente con el dbgrid de las RX que lo hace sólo con una propiedad... es más fácil :D

Neftali [Germán.Estévez] 07-07-2011 11:04:52

Aquí tienes la explicación y el código:
Dibujar una flecha (ordenación) en el título de un DBGrid



El funcionamiento es similar si en lugar de dibujar copias una imagen sobre el canvas.

Pedro-Juan 07-07-2011 13:15:41

Cita:

Empezado por Casimiro Notevi (Mensaje 405682)
Sé que se ha tratado en algunos hilos, aunque no lo encuentro, también sé que lo he hecho en varias ocasiones, aunque últimamente con el dbgrid de las RX que lo hace sólo con una propiedad... es más fácil :D

¿Las rusas? Hace por lo menos 10 años que no sé nada de ellas.:o

Pero las miraré... ¡Sólo con una propiedad! Gracias.

Pedro-Juan 07-07-2011 13:28:52

Cita:

Empezado por Neftali (Mensaje 405696)
Aquí tienes la explicación y el código:
Dibujar una flecha (ordenación) en el título de un DBGrid



El funcionamiento es similar si en lugar de dibujar copias una imagen sobre el canvas.

La cuestión es que ya tengo todo el código implementado para esto, sólo necesitaría las imágenes "correctas". Una muestra:






Como ves, lo que necesitaría son las imágenes, ya que las que he conseguido (triángulos) se ven muy mal o no transparentes y las de la muestra son muy grandes (queda feo). Y si las hago más pequeñas quedan desdibujadas, también se ve muy feo (Peor).

Muchas gracias y un saludo.

Casimiro Noteví 07-07-2011 13:44:34

Con las RX, por ejemplo, sólo has de asignar a SortMarker si quieres el triángulo para arriba, abajo o nada:

Código Delphi [-]
procedure TFplantillaTablas.grDatosGetBtnParams(Sender: TObject; Field: TField;
  AFont: TFont; var Background: TColor; var SortMarker: TSortMarker;
  IsDown: Boolean);
begin
  inherited;
  if (Field <> nil) then
    if cCampoSorted=Field.FieldName then
      case iTipoOrden of
        _ordensin_ : SortMarker := smNone;
        _ordenasc_ : SortMarker := smUp;
        _ordendes_ : SortMarker := smDown;
      end;
end;

Neftali [Germán.Estévez] 07-07-2011 13:52:33

Cita:

Empezado por Pedro-Juan (Mensaje 405711)
...Como ves, lo que necesitaría son las imágenes, ya que las que he conseguido (triángulos) se ven muy mal o no transparentes y las de la muestra son muy grandes (queda feo). Y si las hago más pequeñas quedan desdibujadas, también se ve muy feo (Peor).

Será por imágenes...

También puedes revisar estos enlaces...
A la búsqueda de imágenes/iconos


La franja horaria es GMT +2. Ahora son las 04:31:32.

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