AutoSizeRow and AutoSizeRows not working

Delphi XE3 Professional + TAdvStringGrid 7.4.6.4

After upgrading to the latest TMS Component Pack using the Subscription Manager,
AutoSizeRow and AutoSizeRows does not work anymore in my application.
This is very annoying and all the users (more than 130) are complaining because they
can't see all the text. Since there were no response in my previous post, I decided to post
a new topic with some screenshots and a better description.

This is from version 7.4.4.2, everything is ok, AutoSizeRows are working:s in my previous post, I

This is from 7.4.6.4, AutoSizeRows are not working:



I cannot see an issue here with the latest TAdvStringGrid with default settings.


When using:
begin
  advstringgrid1.Cells[1,1] := 'This is some text that should wordwrap for autosize';
  advstringgrid1.AutoSizeRows(false);
end;

the text is properly wordwrapped and the height of the 1st row increased accordingly.
What are you doing different from this? What are your full grid settings? Do you have grid.WordWrap = true?

Yes, wordwrap is set, here's the grid:

object strHend: TAdvStringGrid
          Tag = 2
          Left = 1
          Top = 26
          Width = 664
          Height = 366
          Cursor = crDefault
          TabStop = False
          Anchors = [akLeft, akTop, akRight, akBottom]
          ColCount = 6
          DefaultColWidth = 45
          DefaultRowHeight = 18
          DrawingStyle = gdsClassic
          FixedCols = 0
          RowCount = 2
          Font.Charset = DEFAULT_CHARSET
          Font.Color = clBlack
          Font.Height = -11
          Font.Name = 'Tahoma'
          Font.Style = []
          Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRowSizing, goColSizing, goThumbTracking]
          ParentFont = False
          ScrollBars = ssBoth
          TabOrder = 2
          OnClick = strHendClick
          HoverRowCells = [hcNormal, hcSelected]
          OnGetCellColor = strHendGetCellColor
          OnGetAlignment = strHendGetAlignment
          OnCanEditCell = strHendCanEditCell
          OnCheckBoxMouseUp = strHendCheckBoxMouseUp
          OnEditCellDone = strHendEditCellDone
          HintShowCells = True
          ActiveCellFont.Charset = DEFAULT_CHARSET
          ActiveCellFont.Color = clWindowText
          ActiveCellFont.Height = -11
          ActiveCellFont.Name = 'Tahoma'
          ActiveCellFont.Style = [fsBold]
          ActiveCellColor = 15387318
          AutoNumAlign = True
          CellNode.NodeType = cnFlat
          CellNode.TreeColor = clSilver
          ColumnHeaders.Strings = (
            ''
            'Hendelser'
            'Utf'#248'rt'
            'Merknad')
          ControlLook.FixedGradientFrom = clWhite
          ControlLook.FixedGradientTo = clSilver
          ControlLook.FixedGradientHoverFrom = 13619409
          ControlLook.FixedGradientHoverTo = 12502728
          ControlLook.FixedGradientHoverMirrorFrom = 12502728
          ControlLook.FixedGradientHoverMirrorTo = 11254975
          ControlLook.FixedGradientDownFrom = 8816520
          ControlLook.FixedGradientDownTo = 7568510
          ControlLook.FixedGradientDownMirrorFrom = 7568510
          ControlLook.FixedGradientDownMirrorTo = 6452086
          ControlLook.DropDownHeader.Font.Charset = DEFAULT_CHARSET
          ControlLook.DropDownHeader.Font.Color = clWindowText
          ControlLook.DropDownHeader.Font.Height = -11
          ControlLook.DropDownHeader.Font.Name = 'Tahoma'
          ControlLook.DropDownHeader.Font.Style = []
          ControlLook.DropDownHeader.Visible = True
          ControlLook.DropDownHeader.Buttons = <>
          ControlLook.DropDownFooter.Font.Charset = DEFAULT_CHARSET
          ControlLook.DropDownFooter.Font.Color = clWindowText
          ControlLook.DropDownFooter.Font.Height = -11
          ControlLook.DropDownFooter.Font.Name = 'Tahoma'
          ControlLook.DropDownFooter.Font.Style = []
          ControlLook.DropDownFooter.Visible = True
          ControlLook.DropDownFooter.Buttons = <>
          EnhRowColMove = False
          Filter = <>
          FilterDropDown.Font.Charset = DEFAULT_CHARSET
          FilterDropDown.Font.Color = clWindowText
          FilterDropDown.Font.Height = -11
          FilterDropDown.Font.Name = 'Tahoma'
          FilterDropDown.Font.Style = []
          FilterDropDownClear = '(All)'
          FilterEdit.TypeNames.Strings = (
            'Starts with'
            'Ends with'
            'Contains'
            'Not contains'
            'Equal'
            'Not equal'
            'Clear')
          FixedFooters = 1
          FixedColWidth = 26
          FixedRowHeight = 18
          FixedFont.Charset = DEFAULT_CHARSET
          FixedFont.Color = clWindowText
          FixedFont.Height = -11
          FixedFont.Name = 'Tahoma'
          FixedFont.Style = []
          FloatFormat = '%.2f'
          FloatingFooter.Visible = True
          HoverButtons.Buttons = <>
          HoverButtons.Position = hbLeftFromColumnLeft
          Look = glTMS
          LookupItems.Strings = (
            'Test'
            'Test2')
          Lookup = True
          Navigation.AllowInsertRow = True
          Navigation.AlwaysEdit = True
          Navigation.AutoGotoWhenSorted = True
          Navigation.InsertPosition = pInsertAfter
          PrintSettings.FooterSize = 26
          PrintSettings.HeaderSize = 51
          PrintSettings.Time = ppBottomCenter
          PrintSettings.Date = ppBottomCenter
          PrintSettings.DateFormat = 'dd.mm.yyyy'
          PrintSettings.PageNr = ppBottomCenter
          PrintSettings.Title = ppTopCenter
          PrintSettings.TitleLines.Strings = (
            '')
          PrintSettings.Font.Charset = ANSI_CHARSET
          PrintSettings.Font.Color = clWindowText
          PrintSettings.Font.Height = -11
          PrintSettings.Font.Name = 'Arial'
          PrintSettings.Font.Style = []
          PrintSettings.FixedFont.Charset = DEFAULT_CHARSET
          PrintSettings.FixedFont.Color = clWindowText
          PrintSettings.FixedFont.Height = -11
          PrintSettings.FixedFont.Name = 'Tahoma'
          PrintSettings.FixedFont.Style = []
          PrintSettings.HeaderFont.Charset = ANSI_CHARSET
          PrintSettings.HeaderFont.Color = clWindowText
          PrintSettings.HeaderFont.Height = -16
          PrintSettings.HeaderFont.Name = 'Arial'
          PrintSettings.HeaderFont.Style = [fsBold]
          PrintSettings.FooterFont.Charset = ANSI_CHARSET
          PrintSettings.FooterFont.Color = clWindowText
          PrintSettings.FooterFont.Height = -13
          PrintSettings.FooterFont.Name = 'Arial'
          PrintSettings.FooterFont.Style = []
          PrintSettings.RepeatFixedRows = True
          PrintSettings.RepeatFixedCols = True
          PrintSettings.LeftSize = 28
          PrintSettings.RightSize = 34
          PrintSettings.ColumnSpacing = 5
          PrintSettings.RowSpacing = 2
          PrintSettings.TitleSpacing = 26
          PrintSettings.Orientation = poLandscape
          PrintSettings.FitToPage = fpShrink
          PrintSettings.PageNumSep = ' av '
          PrintSettings.NoAutoSizeRow = True
          PrintSettings.PrintGraphics = True
          ScrollWidth = 14
          SearchFooter.ColorTo = 15790320
          SearchFooter.FindNextCaption = 'Find next'
          SearchFooter.FindPrevCaption = 'Find previous'
          SearchFooter.Font.Charset = DEFAULT_CHARSET
          SearchFooter.Font.Color = clWindowText
          SearchFooter.Font.Height = -11
          SearchFooter.Font.Name = 'Tahoma'
          SearchFooter.Font.Style = []
          SearchFooter.HighLightCaption = 'Highlight'
          SearchFooter.HintClose = 'Close'
          SearchFooter.HintFindNext = 'Find next occurence'
          SearchFooter.HintFindPrev = 'Find previous occurence'
          SearchFooter.HintHighlight = 'Highlight occurences'
          SearchFooter.MatchCaseCaption = 'Match case'
          ShowSelection = False
          SortSettings.DefaultFormat = ssAutomatic
          SortSettings.Show = True
          URLShow = True
          Version = '7.4.6.4'
          ColWidths = (
            26
            357
            37
            215
            20
            20)
        end

Here's the code to fill the grid, please note that the grid has hidden rows.
First this piece of code is executed:

procedure FiltrerSjekkliste(AGrid : TAdvStringGrid;AFilter : Integer);
var
  i  : Integer;
const
  C : array[1..7] of Integer=(1,6,7,8,9,11,15);
begin
  AGrid.UnHideRowsAll;
  if AFilter=2 then
    for i := High(c) downto Low(c) do
    AGrid.HideRow(c);
  AGrid.AutoNumberCol(0);
end;

Then I fill the grid, AutosizeRow is used here, but as you can see, I have tried AutoSizeRows also.
This code worked very well until the update of the TAdvStringGrid.


procedure FyllHendelserOppdrag(ASaksnummer,AOppdrag : Integer;AGrid : TAdvStringGrid;AType : THendelseslistetype);
var
  A       : TADOQuery;
  i,iRow  : Integer;
  iOffset : Integer;
  iRecs   : Integer;
begin
  TomGridHendelser(AGrid,AType);
  if (ASaksnummer=0) or (AOppdrag=0) then Exit;
  AGrid.ControlLook.CheckAlwaysActive := True;
  A           := GetAdoQuery;
  A.SQL.Text  := SP_EXECKONT + Format('sjekklisteoppdrag %d,%d,0,%d',[ASaksnummer,AOppdrag,Ord(AType)]);
  iOffset     := 4;
  if AType in [htMappeKontroll,htKontrollKontrakt] then inc(iOffset);  //htKontrollKontrakt
 try
  A.Open;
  iRecs          := A.RecordCount;
  AGrid.WordWrap := True; // TO MAKE SURE WORDWRAP IS SET
  if iRecs> 0 then
  for i := 1 to AGrid.RowCount-2 do
  begin
    A.Filter   := Format('PunktId=%d',[AGrid.Ints[iOffset,i]]);
    A.Filtered := True;
    if A.RecordCount>0 then
    begin
      iRow := AGrid.RealRowIndex(i);
      AGrid.SetCheckBoxState(2,iRow,A.FieldByName(DBF_AVKRYSSET).AsBoolean);
      if (iOffset=5) then
      begin
        if A.RecNo<iRecs then
         if not A.FieldByName(DBF_AVKRYSSET).AsBoolean then AGrid.SetCheckBoxState(3,iRow,True)
         else AGrid.Ints[iOffset+1,i]  := 100;
      end;
      AGrid.Cells[iOffset-1,i]  := A.FieldByName('Kommentar').AsString;
      AGrid.AutoSizeRow(i); // NOT WORKING
    end;
  end;
  //AGrid.AutoSizeRows(true, 1); for testing, not working
 finally
   FreeAndNil(A);
 end;
end;

Not sure why this is called a support forum, not much support here.
I've been using Delphi since February 1995, I'm not exactly a novice.

  1. maybe look at ALL forum entries and their responses to see how our typical reactivity is
    2) at this very moment, it is weekend, the time that some hard working people deserve a break
    3) we received a similar problem report that we already worked on, communicated via email with the user, sent a test version to get more info and just got feedback a couple of hours ago that a fix seemed to have helped, so this fix, when having undergone more testing will be included in the next scheduled release of Nov 13.

I have 130 users who's not able to read their reports because of this bug. It doesn't make me very popular when I try to explain that I have contacted the vendor, but it will take some time before it's fixed.I did not post this is on a weekend, I posed it on a wednesday, and I even posted one on Tuesday with no response at all.

  1. I don't see unanswered posts from you in this group. I see several answers from my colleagues trying to help you
    2) Please inform what we can do more than a) investigate the problem b) search for a fix c) test the fix d) release an update?