You've already forked lazarus-ccr
Add custom TJDBGridColumns and TJDBColumn. Thanks jesusrmx
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2025 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -5,11 +5,35 @@ unit JDBGridControl;
|
|||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils, LResources, Forms, Controls, Graphics, DB, DBGrids,
|
Classes, SysUtils, LResources, Forms, Controls, Graphics, DB, Grids, DBGrids,
|
||||||
Dialogs, jdbgridutils;
|
Dialogs, jdbgridutils;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
|
{ TJDBColumn }
|
||||||
|
|
||||||
|
TJDBColumn = class(TColumn)
|
||||||
|
private
|
||||||
|
fDecimals: integer;
|
||||||
|
function getDecimals: integer;
|
||||||
|
procedure setDecimals(AValue: integer);
|
||||||
|
published
|
||||||
|
property Decimals: integer read getDecimals write setDecimals;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TJDBGridColumns }
|
||||||
|
|
||||||
|
TJDBGridColumns = class(TDBGridColumns)
|
||||||
|
private
|
||||||
|
function GetColumn(Index: integer): TJDBColumn;
|
||||||
|
procedure SetColumn(Index: integer; AValue: TJDBColumn);
|
||||||
|
public
|
||||||
|
function add: TJDBColumn;
|
||||||
|
property Items[Index: integer]: TJDBColumn read GetColumn write SetColumn; default;
|
||||||
|
published
|
||||||
|
|
||||||
|
end;
|
||||||
|
|
||||||
{ TJDBGridControl }
|
{ TJDBGridControl }
|
||||||
|
|
||||||
TJDBGridControl = class(TDBGrid)
|
TJDBGridControl = class(TDBGrid)
|
||||||
@ -20,11 +44,15 @@ type
|
|||||||
integerDbGridControl: TJDbGridIntegerCtrl;
|
integerDbGridControl: TJDbGridIntegerCtrl;
|
||||||
doubleDbGridControl: TJDbGridDoubleCtrl;
|
doubleDbGridControl: TJDbGridDoubleCtrl;
|
||||||
dateTimeDbGridControl: TJDbGridDateTimeCtrl;
|
dateTimeDbGridControl: TJDbGridDateTimeCtrl;
|
||||||
|
function GetColumns: TJDBGridColumns;
|
||||||
|
procedure SetColumns(AValue: TJDBGridColumns);
|
||||||
protected
|
protected
|
||||||
{ Protected declarations }
|
{ Protected declarations }
|
||||||
//procedure SelectEditor; override;
|
//procedure SelectEditor; override;
|
||||||
|
function CreateColumns: TGridColumns; override;
|
||||||
function GetDefaultEditor(Column: integer): TWinControl; override;
|
function GetDefaultEditor(Column: integer): TWinControl; override;
|
||||||
procedure UpdateData; override;
|
procedure UpdateData; override;
|
||||||
|
property Columns: TJDBGridColumns read GetColumns write SetColumns;
|
||||||
public
|
public
|
||||||
{ Public declarations }
|
{ Public declarations }
|
||||||
constructor Create(TheOwner: TComponent); override;
|
constructor Create(TheOwner: TComponent); override;
|
||||||
@ -44,6 +72,34 @@ begin
|
|||||||
RegisterComponents('Data Controls', [TJDBGridControl]);
|
RegisterComponents('Data Controls', [TJDBGridControl]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function TJDBColumn.getDecimals: integer;
|
||||||
|
begin
|
||||||
|
Result := fDecimals;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TJDBColumn.setDecimals(AValue: integer);
|
||||||
|
begin
|
||||||
|
if (AValue >= 0) and (AValue <= 10) then
|
||||||
|
fDecimals := AValue;
|
||||||
|
end;
|
||||||
|
|
||||||
|
{ TJDBGridColumns }
|
||||||
|
|
||||||
|
function TJDBGridColumns.GetColumn(Index: integer): TJDBColumn;
|
||||||
|
begin
|
||||||
|
Result := TJDBColumn(inherited Items[Index]);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TJDBGridColumns.SetColumn(Index: integer; AValue: TJDBColumn);
|
||||||
|
begin
|
||||||
|
Items[Index].Assign(AValue);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TJDBGridColumns.add: TJDBColumn;
|
||||||
|
begin
|
||||||
|
Result := TJDBColumn(inherited add);
|
||||||
|
end;
|
||||||
|
|
||||||
{ TJDBGridControl }
|
{ TJDBGridControl }
|
||||||
|
|
||||||
//procedure TJDBGridControl.SelectEditor;
|
//procedure TJDBGridControl.SelectEditor;
|
||||||
@ -60,6 +116,21 @@ end;
|
|||||||
// end;
|
// end;
|
||||||
//end;
|
//end;
|
||||||
|
|
||||||
|
function TJDBGridControl.GetColumns: TJDBGridColumns;
|
||||||
|
begin
|
||||||
|
Result := TJDBGridColumns(inherited Columns);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TJDBGridControl.SetColumns(AValue: TJDBGridColumns);
|
||||||
|
begin
|
||||||
|
inherited Columns := TDBGridColumns(AValue);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function TJDBGridControl.CreateColumns: TGridColumns;
|
||||||
|
begin
|
||||||
|
Result := TJDBGridColumns.Create(Self, TJDBColumn);
|
||||||
|
end;
|
||||||
|
|
||||||
function TJDBGridControl.GetDefaultEditor(Column: integer): TWinControl;
|
function TJDBGridControl.GetDefaultEditor(Column: integer): TWinControl;
|
||||||
var
|
var
|
||||||
//aColumn: TColumn;
|
//aColumn: TColumn;
|
||||||
|
Reference in New Issue
Block a user