1

TDBGrid があり、TDataSource を介して関連付けられたクライアント データセットがあります。プログラムでグリッドの列を再配置しようとすると、グリッドに1つ以上の列がある場合、これは正常に機能します。

たとえば、すべての列を false に表示できるようにしました。したがって、グリッドにはまだ列がありません。ここで、列のインデックスを 11 から 0 に設定すると、

Columns[iColIndx].Index := iNewColIndex;
// Assume iColIndx = 11 and iNewColIndex = 0

Columns[iNewColIndex].Visible := True;
//Making the column visible

上記の列インデックスの割り当てがグリッドに反映されていません。2回、3回設定してみると反映されてしまいます。私は何か不足していますか?

4

1 に答える 1

1

私はそれを解決しました。グラデーションを描画するためのグリッドを割り当てましたが、そこからOnDrawDataCell呼び出していませんでしたDefaultDrawDataCell。さらに、DefaultDrawingプロパティはオフになりました。

イベントハンドラー内から設定DefaultDrawingして呼び出した後、現在は正常に機能しています。DefaultDrawDataCellDrawDataCell

于 2011-11-16T08:48:20.930 に答える