Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-08-2004
ramonibk ramonibk is offline
Miembro
 
Registrado: may 2004
Posts: 193
Poder: 20
ramonibk Va por buen camino
DBEdit Centardo

Alguien sabria como poder centrar un Texto en un DBEdit????
Responder Con Cita
  #2  
Antiguo 03-08-2004
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.269
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por ramonibk
Alguien sabria como poder centrar un Texto en un DBEdit????
Se puede hacer sinmucha complicación derivando el Control DBEdit y modificando los parámetros de creación de la ventana. Para ello sobreescribes el procedimiento CreateParams del control.
El código del ontrol es muy sencillo y quedaría algo así:

Código Delphi [-]
unit CDBEditAlign;
 
//====================================================
interface
uses
  Windows, Messages, SysUtils, Classes, Controls, StdCtrls, DBCtrls;
type
  // Tipo para la propiedad de alineación
  TEditAlignment = (eaLeft, eaCenter, eaRight);
  // clase del nuevo control
  TDBEditAlign = class(TDBEdit)
  private
    { Private declarations }
    fAlignment: TEditAlignment;
    procedure setAlignment(nValue: TEditAlignment);
  protected
    { Protected declarations }
    // redefines la rutina para cambiar los parámetros de creacion
    procedure CreateParams(var Params: TCreateParams); override;
  public
    { Public declarations }
  published
    { Published declarations }
    // Prop. nueva de alineacion
    property Alignment: TEditAlignment read fAlignment write setAlignment;
  end;
 
// rutina para regisrar el componente
procedure Register;
 
//====================================================
implementation
 
//: Set  de la propiedad.
procedure TDBEditAlign.setAlignment(nValue: TEditAlignment);
begin
  // Ha cambiado el valor?
  if fAlignment <> nValue then begin
    fAlignment:= nValue;
    // recrear la ventana del control
    RecreateWnd;
  end;
end;
 
// Parametros de creacion
procedure TDBEditAlign.CreateParams(var Params: TCreateParams);
const
  Alignments: array[TEditAlignment] of Longint = (ES_LEFT, ES_CENTER, ES_RIGHT);
begin
  inherited CreateParams(Params);
  CreateSubClass(Params, 'DBEDIT');
  Params.Style := Params.Style or Alignments[fAlignment];
end;
 
// Registrar el componente
procedure Register;
begin
  RegisterComponents('samples', [TDBEditAlign]);
end;
end.

Crea un package, añádelo e instálalo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 03-08-2004
Avatar de ruina
ruina ruina is offline
Miembro
 
Registrado: jun 2004
Posts: 196
Poder: 20
ruina Va por buen camino
pues el dbedit no tiene ninguna propiedad al respecto, sin embargo el DBText sí lo tiene, puede que te sirva si no necesitas editar.
__________________
todo el mundo debe creer en algo... yo creo que voy a tomarme otra copa.
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


La franja horaria es GMT +2. Ahora son las 00:53:30.


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