Jump to content


WEI

Member Since 15 Nov 2006
Offline Last Active Apr 14 2007 09:42 PM
-----

Topics I've Started

Serious bug in TNextGrid with TNxTreeColumn, I'm really disppointed now for NextGri...

27 November 2006 - 09:59 PM

Hi, Boki

I guess you have a serious bug in TNextGrid with TNxTreeColumn when using PAGEDOWN and PAGEUP button, here is how to reproduce it:

Create a clean form, add a NextGrid control (make the visible row count = 10 rows) and with one TNxTreeColumn and one TNxTextColumn, add a button on the form, at the on button click event, adding the following code

CODE
  nxgrid.AddRow(20);
  nxgrid.AddChildRow(0);
  nxgrid.AddChildRow(0);


When if the first row is expanded, Press PAGEDOWN button will goes to 10th row, which is good. but when the first row is shrink(all its child rows are all invisible), then press PAGEDOWN, it will goes to/8th rows. so if adding more child rows, press PAGEDOWN will goes to row of VISIBLECOUNT - child count of first row. so you can image if the child row of the first row exceed the total of visible row count, What will be happend?

so I would assume that pressing UP ARROW and DOWN ARROW would have the same problem.

so please give this a quick fix, we can not afford this kind of bug to give to our customers.

Why don't you fully test your grid before make a new release?

Regards,

WEI

I found a bug in TNextGrid.AddRow

27 November 2006 - 04:13 AM

HI, Boki

I guess I found a bug in TNextGrid.AddRow:

CODE
    if (GridLinesStyle = lsFramed) and (goGrid in Options) and (RowCount > 1)
    then RefreshRowGrid((RowCount - Count) - 1);


If you add a 20 rows to an empty grid (GridLinesStyle = lsFramed and goGrid = True) by calling AddRow(20), then RefreshRowGrid(-1), which cause List Index out of bounds: -1?

Any ideas how to fix?

Regards,

WEI

Need to clarify for Some NextGrid code

25 November 2006 - 06:32 PM

Hi, boki

In the method TNxCustomGrid.UpdateArrows of NxCustomGrid unit, line 1678:

CODE
      if NewPosition > CurPosition then
      begin
        case TargetColumn.Location of
          clAlone, clLeftSide: X := TargetColumn.Left + TargetColumn.Width;
          else X := TargetColumn.Left + TargetColumn.Width;
        end;
      end else
      begin
        X := TargetColumn.Left;
      end;


since both statement in the case TargetColumn.Location is the same, so will it be (remove case):

CODE
      if NewPosition > CurPosition then
      begin
          X := TargetColumn.Left + TargetColumn.Width;
      end
      else
      begin
        X := TargetColumn.Left;
      end;


or is it just missing something in the original code?

Regards,

WEI

NextGrid doesn't work properly in a inherited form.

15 November 2006 - 06:11 PM

HI,

Just bought NextGrid Suite yesterday. I found a serious problem, The NextGrids didn't work properly in inherited forms. The grids were totally screwed up if changing any of the properties of the grids which in the inherited forms for existing columns at design time. Its a stopshow to us now. Any chance to have a quick fix in the next release?

Thanks

WEI