Thema: Delphi TMS AdvGrid - Anleitung

Einzelnen Beitrag anzeigen

guidok

Registriert seit: 28. Jun 2007
417 Beiträge
 
#1

TMS AdvGrid - Anleitung

  Alt 14. Aug 2007, 08:21
Hallo,

auf der Suche nach einem komfortablen Grid, habe ich mir das AdvStringGrid von TMS heruntergeladen und probiere damit jetzt ein bischen herum. Leider habe ich es bisher (unter anderem) nicht geschafft,

- Zellen ganz normal zu editieren (im normalen Grid "goEditing")
- eine eingefügte Checkbox mit der Maus zu checken zu bringen
- eine Combobox anzeigen zu lassen

Ich muss dazu sagen, dass ich die Turbo Explorer Version verwende und demgemäß die Komponente nicht in der Tool Palette installieren konnte, sondern per Code eingebunden und selbst erzeugt habe. Leider fallen dabei auch die komfortablen Einstellmöglichkeiten über den OI weg und dummerweise gibt es die PDF-Anleitung für die Komponente nur für Benutzer, die sie sich gekauft haben und zunächst möchte ich mal mit der Umsonst-Version probieren.

Kann mir da mal jemand auf die Sprünge helfen, der die Komponente kennt?

Ich poste hier auch mal meinen Quelltext:
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    G: TAdvStringGrid;
    procedure GIsFixed(Sender: TObject; Arow, Acol: Integer; var isfixed: Boolean);
    procedure GGridHint(Sender: TObject; Arow, Acol: Longint; var hintstr: string);
    procedure GGetEditorType(Sender: TObject; Arow, Acol: Integer; var aEditor: TEditorType);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var c,r: Integer;
begin
  G:=TadvStringGrid.Create(self);
  G.Parent:=Form1;
  G.Align:=alClient;

  G.Navigation.AlwaysEdit:=True;

  for c := 0 to G.ColCount - 1 do
    for r := 0 to G.RowCount - 1 do
      G.Cells[c,r]:='Zelle '+IntToStr(c)+'/'+IntToStr(r);

  //Farben Funktioniert!
  G.Colors[4,4]:=clYellow;

  //Sortieren
  G.SortSettings.Column:=3;

  //Checkbox
  G.AddCheckBox(2,3,false,false);
  G.Cells[2,3]:='Checkbox';

  //Combobox
  G.OnGetEditorType:=GGetEditorType;

  //Fixierte Zellen Funktioniert!
  G.OnIsFixedCell:=GIsFixed;

  //Hint einblenden Funktioniert!
  G.OnGridHint:=GGridHint;
  G.ShowHint:=True;
end;

procedure TForm1.GIsFixed(Sender: TObject; Arow: Integer; Acol: Integer; var isfixed: Boolean);
begin
  if (ACol=2) and (ARow=2) then
    isfixed:=True;
end;

procedure TForm1.GGridHint(Sender: TObject; Arow: Integer; Acol: Integer; var hintstr: string);
begin
  if ARow=3 then
    hintstr:='Jetzt wird eine Hilfe eingeblendet';
end;

procedure TForm1.GGetEditorType(Sender: TObject; Arow: Integer; Acol: Integer; var aEditor: TEditorType);
begin
  if Acol=4 then
    aEditor:=edComboList;
    G.ClearComboString;
    G.AddComboString('Erstes');
    G.AddComboString('Zweites');
end;
  Mit Zitat antworten Zitat