Einzelnen Beitrag anzeigen

hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: TMS String Grid mit Button in einer Spalte

  Alt 2. Okt 2017, 13:19
Hallo,
kann ich nicht nachvollziehen.

Delphi-Quellcode:
type
  TForm115 = class(TForm)
    SG: TAdvStringGrid;
    procedure FormCreate(Sender: TObject);
    procedure SGButtonClick(Sender: TObject; ACol, ARow: Integer);
    procedure SGCanEditCell(Sender: TObject; ARow, ACol: Integer;
      var CanEdit: Boolean);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form115: TForm115;

procedure TForm115.FormCreate(Sender: TObject);
begin
  SG.AddButton(1,1,40,20,'1,1',haCenter,vaCenter);
end;

procedure TForm115.SGButtonClick(Sender: TObject; ACol, ARow: Integer);
begin
  MessageBox(0,'','',0);
end;

procedure TForm115.SGCanEditCell(Sender: TObject; ARow, ACol: Integer;
  var CanEdit: Boolean);
begin
  CanEdit := True;
end;
Wenn ich in die Zelle mit der Tastatur gehe, wird per Leertaste SGButtonClick aufgerufen.
Setz doch mal einen Breakpoint auf CanEditCell und gehe in die TMS-Quellen rein.

Die ButtonClick-Methode wird in WMKeyDown aufgerufen (unit AdvGrid)
Heiko

Geändert von hoika ( 2. Okt 2017 um 13:21 Uhr)
  Mit Zitat antworten Zitat