楼主,我大概试了试
这个可以得到可见行的节点信息(第一列)
procedure TMainForm.Button1Click(Sender: TObject);
var
lNode: TTreeListNode;
begin
lNode := DataGrid.TopVisibleNode;
jsDialogs.ShowMsg(lNode.Strings[0], 'lNode.Strings[0]');
lNode := lNode.GetNextNode;
jsDialogs.ShowMsg(lNode.Strings[0], 'lNode.Strings[0]');
end;
这个就可以让panel跟随某一行走。
procedure TMainForm.Button2Click(Sender: TObject);
var
t0, h0, rh, lh: integer;
begin
t0 := DataGrid.Top;
h0 := DataGrid.HeaderRowHeight; //DataGrid.HeaderPanelHeight; //HeaderHeight; //
rh := DataGrid.RowHeight;
lh := 1;
Panel1.Height := rh;
Panel1.Top := t0 + h0+lh;
end; |