クライアントは、行を選択して、左側のどのレコードが作業中かがわかるようにしながら、1 列だけを編集できるようにしたいと考えています。
そのため、行選択とキー押下イベントの発生を許可する方法、または行内の別のセルが入力されたかどうかに基づいてセルに色を付ける方法についてアドバイスしてください。
クライアントは、行を選択して、左側のどのレコードが作業中かがわかるようにしながら、1 列だけを編集できるようにしたいと考えています。
そのため、行選択とキー押下イベントの発生を許可する方法、または行内の別のセルが入力されたかどうかに基づいてセルに色を付ける方法についてアドバイスしてください。
個別の cxGrid 行の色付けは、OnGetContentStyle イベントで Styles コレクションを使用して行うのが最適です。
procedure StylesGetContentStyle(Sender: TcxCustomGridTableView;
ARecord: TcxCustomGridRecord; AItem: TcxCustomGridTableItem;
out AStyle: TcxStyle);
begin
if SomeCondition then
AStyle := SomeTcxStyle;
end;
もう 1 つの方法は、OnCustomDrawCell イベントを使用してグリッドを自分で描画することです。私はスタイルを使用することを好みます。それはよりクリーンです。