独自の DBGRid を作成していますが、選択リストを除いて正常に動作します。グリッドにどのようなボタン スタイルが設定されていても、選択リストや楕円ボタンではなく、常にインプレース エディターが表示されます。
私がやっている間違いを理解することはできません:(。関連するコードは次のとおりです:
function TMyDBGrid.CreateEditor: TInplaceEdit;
begin
result:=TInplaceEdit.Create(self);
end;
function TMyDBGrid.GetEditStyle(ACol, ARow: integer): TEditStyle;
begin
case Columns[ACol].ButtonStyle of
cbsAuto : Result:=esPickList;
cbsNone : result:=esSimple;
cbsEllipsis : result:=esEllipsis;
end;
end;
コンストラクタとデストラクタは単にinheritedを呼び出し、コンストラクタはグリッドの色を設定するだけです。