Bonjour à tous,
Je souhaite créer une classe qui hérite de TStringGrid, avec initialisation de certaines propriétés pour ne pas avoir à le faire à la création d'une instance. Mais cela ne fonctionne pas.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
type
  TMzGrid = class(TStringGrid)
  private
    FLinkedTable : String;    //Table liée
    constructor Create(AOwner: TComponent);
  end;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
constructor TMzGrid.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  Align            := alClient;
  ColCount     := 1;
  FixedCols     := 1;
  Options        :=  [goFixedVertLine,goFixedHorzLine,goVertLine,goHorzLine,goColSizing,goRowSelect,goSmoothScroll];
  RowCount      := 1;
Dans la fenêtre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
constructor TfMain.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
 
  //Créer la grille de travail
  grMain := TMzGrid.Create(tsGrid);
  grMain.Parent := tsGrid;
end;
TfMain est un Tframe et le parent de la grille est un TabSheet. La grille est bien créée et visible mais les valeurs des propriétés ne sont pas bonnes. La grille n'est pas étendue sur tout le parent et le nombre de ligne et de colonnes n'est pas bon, ils sont au nombre de 4x4.

Je dois avoir certainement avoir loupé quelque chose.

Merci de votre aide.
Salim.