Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-08-2013
giocatore giocatore is offline
Miembro
 
Registrado: dic 2005
Posts: 31
Poder: 0
giocatore Va por buen camino
títulos de dbgrids de 2 filas

buenas noches, quisiera me ayuden con este problema que tengo:
quisiera poder poner títulos largos en las tablas usando dbgrid sin tener que ensanchar la columna, es decir quiero saber como hacer para poder ponerlos en 2 filas para que me entre el título completo, o caso contrario (pese a que encontré alguna solución, y no es muy fluida ya que el hint aveces aparece y aveces nó) ponerles hints a cada columna de la tabla.
para los hints usé el código de este hilo.

http://www.clubdelphi.com/foros/showthread.php?t=56876

hago notar que uso adotables, delphi xe2 y dbgrids.

Espero por favor puedan ayudarme.

GRacias!!!
Responder Con Cita
  #2  
Antiguo 28-08-2013
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Poder: 19
ElDioni Va por buen camino
Hola,

puedes utilizar el componente SMDBGrid que es gratuito y funciona para todas las versiones de delphi. Si te decides por este componente verás que tiene una propiedad que se llama TitleHeight para conseguir lo que quieres hacer.

Saludos.
__________________
Confórmate con lo que tienes pero anhela lo que te falta.
Responder Con Cita
  #3  
Antiguo 29-08-2013
giocatore giocatore is offline
Miembro
 
Registrado: dic 2005
Posts: 31
Poder: 0
giocatore Va por buen camino
hola, gracias por la respuesta, hay alguna manera de hacerlo con dbgrid o sin usar un componente externo???
gracias!!
Responder Con Cita
  #4  
Antiguo 29-08-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola giocatore.
Cita:
Empezado por giocatore Ver Mensaje
hay alguna manera de hacerlo con dbgrid o sin usar un componente externo???
Si claro que la hay.

Por ejemplo:
Código Delphi [-]
...
type
  TDBGrid = class(DBGrids.TDBGrid)
  private
  protected
    procedure DrawCell(ACol, ARow: Integer; ARect: TRect; State: TGridDrawState); override;
  public
  end;

  TForm1 = class(TForm)
    Table1: TTable;
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    procedure FormCreate(Sender: TObject);
  private
  public
  end;

var
  Form1: TForm1;

implementation 

procedure TDBGrid.DrawCell(ACol, ARow: Integer; ARect: TRect; State: TGridDrawState);
const
  ALGN : array[0..2] of Integer = (DT_LEFT, DT_RIGHT, DT_CENTER);
var
  CurrTit : string;
  CurrCol : TColumn;
  uFormat : Integer;
begin
  TDBGrid(Self).RowHeights[0] := 2 * TDBGrid(Self).DefaultRowHeight;
  if (ARow = 0) and (ACol > 0) and (ColCount > 0) then
  begin
    CurrCol := Columns[ACol - Integer(dgIndicator in Options)];
    CurrTit := CurrCol.Title.Caption;
    Canvas.Font := CurrCol.Font;
    Canvas.FillRect(ARect);
    uFormat := ALGN[Integer(CurrCol.Title.Alignment)] + DT_WORDBREAK;
    DrawText(Canvas.Handle, PChar(CurrTit), -1, ARect, uFormat);
  end
  else
    Inherited;
end;

// Ejemplo: Un titulo y su alineación
procedure TForm1.FormCreate(Sender: TObject);
begin
  DBGrid1.Columns[0].Title.Caption :=
    'Titulo muy largo para que pueda verse' + #10 +
    'con mayor clariodad en dos renglones';
  DBGrid1.Columns[0].Title.Alignment := taCenter;
end;
...
Pero coincido con ElDioni, con que es mas simple y reusable utilizar un componente de tercero, o bién crearte uno incorporándole este código u otro similar.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 29-08-2013
Avatar de ElDioni
[ElDioni] ElDioni is offline
Miembro Premium
 
Registrado: jul 2005
Ubicación: Murcia (España)
Posts: 935
Poder: 19
ElDioni Va por buen camino
ecfisa de mayor quiero ser como tu .

Saludos.
__________________
Confórmate con lo que tienes pero anhela lo que te falta.
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
Refrescar DBGrids waly2k1 Conexión con bases de datos 4 26-10-2007 09:14:07
ayuda con los dbgrids amix MS SQL Server 5 17-10-2007 03:30:05
Ayuda con los DBGRIDS drakkon Varios 4 18-06-2007 14:16:48
Títulos en DbGrids Viky Varios 4 01-06-2007 02:08:07
Celdas en DBGrids karocs Conexión con bases de datos 1 31-08-2004 13:24:13


La franja horaria es GMT +2. Ahora son las 00:49:13.


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