unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, NxColumns6, NxGridView6, NxControls6, NxCustomGrid6, NxVirtualGrid6, NxGrid6,
  Vcl.StdCtrls, NxEdit6;

type
  TForm1 = class(TForm)
    NextGrid61: TNextGrid6;
    NxReportGridView61: TNxReportGridView6;
    NxTextColumn61: TNxTextColumn6;
    NxButtonColumn61: TNxButtonColumn6;
    CheckBox1: TCheckBox;
    NxButtonEdit61: TNxButtonEdit6;
    ListBox1: TListBox;
    procedure FormCreate(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure NxButtonColumn61ButtonClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  NxButtonColumn61.AlwaysShowButton := TCheckBox(Sender).Checked;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  NextGrid61.AddCells(['Michael', 'John', 'Lisa', 'Bruce', 'George'], [0]);
end;

procedure TForm1.NxButtonColumn61ButtonClick(Sender: TObject);
begin
  ListBox1.Items.Add('OnButtonClick');

  // If InplaceEdit is involved, set its value (!)
  if NextGrid61.InplaceEdit <> nil then
  begin
    NextGrid61.InplaceEdit.Text := 'Placed outside';
  end
  else NextGrid61.SelectedCell.AsString := 'Placed outside';
end;

end.
