初心者のため記述方法がまったくわかりません。
処理内容は、10行表示されたデータの1行を選択し
TBitBtnにてそのデータを10行表示の範囲内で上下の
移動をしたいと思うのですが、ご存知のお方ご教授
お願いいたします。
StringColGrid
は知りませんが、
StringGridなら
Optionsプロパティで goRowMoving を Trueにすれば、左のIndicator部分をドラッグして
移動できます。
プログラムで移動させる場合は、こんな感じでどうでしょう?
procedure TForm1.Button1Click(Sender: TObject);
var
cnt: Integer;
sl: TStringList;
idx_from, idx_to: integer;
begin
sl := TStringList.Create;
try
with StringGrid1 do
begin
{ 末尾のデータを先頭に }
idx_from := RowCount - 1;
idx_to := FixedRows;
for cnt := 0 To ColCount - 1 Do
begin
sl.Assign(Cols[cnt]);
sl.Move(idx_from, idx_to);
Cols[cnt].Assign(sl);
end;
end;
finally
sl.Free;
end;
end;
igyさまレスありがとうございました。
記述ミスで申し訳ありませんでしたStringColGridで正しいです。
内容確認をして、対応しましたところ、いい感じで行入れ替えが
出来るようになりました。
大変ありがとうございました。
ツイート | ![]() |