Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #5  
Antiguo 03-07-2004
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 23
Gydba Va por buen camino
Buenas,

Me tomé el atrevimiento de hacer un ejemplito muy simple de algo similar a lo que pedís. Y en consideración de la admiración que les tengo a Uds para mí es todo un placer poder colaborar, aunque sea con una idea:
Código Delphi [-]
unit CustomDBGrid1;

interface

uses
  Windows, Messages, Dialogs, SysUtils, Classes, Controls, Grids, DBGrids;

type
   TEv_ColumnWidthChg = procedure (Sender: TObject; Columna: Longint) of object;

type TCustomDBGrid1 = class(TDBGrid)
private
   bColMoved      : Boolean;
   varColWidthChg : TEv_ColumnWidthChg;
   varCurrentCell : TGridCoord;
   procedure Proc_MovedEvent(Sender: TObject; FromIndex, ToIndex: Longint);
public
   procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
   constructor Create(AOwner : TComponent); override;
   procedure ColWidthsChanged; override;
published
   property OnColumnWidthChange : TEv_ColumnWidthChg read varColWidthChg write varColWidthChg;
end;

procedure Register;

implementation

procedure TCustomDBGrid1.Proc_MovedEvent(Sender: TObject; FromIndex, ToIndex: Longint);
begin
   bColMoved := True;
end;

procedure TCustomDBGrid1.MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
   inherited MouseDown(Button, Shift, X, Y);
   varCurrentCell := TCustomGrid(Self).MouseCoord(X - 5, Y);
end;

procedure TCustomDBGrid1.ColWidthsChanged;
begin
   inherited ColWidthsChanged;
      if not bColMoved then begin
         if Assigned(varColWidthChg) then varColWidthChg(Self, varCurrentCell.X);
      end;
   bColMoved := False;
end;

constructor TCustomDBGrid1.Create(AOwner : TComponent);
begin
   inherited Create(AOwner);
   Self.OnColumnMoved := Proc_MovedEvent;
   bColMoved          := False;
end;

procedure Register;
begin
  RegisterComponents('TEST', [TCustomDBGrid1]);
end;

end.
__________________
Suerte
.: Gydba :.
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


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


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
Copyright 1996-2007 Club Delphi