Jump to content

FrankB99

Members
  • Content Count

    1
  • Joined

  • Last visited

Community Reputation

0 Neutral
  1. FrankB99

    Configuring the vertical scroll bar of TStringGrid

    HI, I'm working every now and then on ExifToolGui. https://github.com/FrankBijnen/ExifToolGui I had a request from someone to change the scrollbar of the Metadatalist to a proportional one. The metadatalist is a TValueListEditor and a descendant of TStringGrid. And thus has the same problems as the TStringGrid. My solution, until I find something better, is to: Set ScrollBars to ssNone, so the problematic code in Vcl.Grids is bypassed. (I only care about the Vertical ScrollBar) Override: procedure CMShowingChanged(var Message: TMessage); message CM_SHOWINGCHANGED; procedure WMSize(var Msg: TWMSize); message WM_SIZE; procedure SizeChanged(OldColCount, OldRowCount: Longint); override; And set the parameters myself. Override: procedure TopLeftChanged; override; And reposition the scrollbar accordingly Override: procedure WMVScroll(var Msg: TWMVScroll); message WM_VSCROLL; And reposition the grid. The code can be enabled by setting the property ProportionalVScroll to true. The complete source can be found here: https://github.com/FrankBijnen/ExifToolGui/blob/main/Source/ExifToolsGui_ValEdit.pas (It contains some more additions, that you can ignore) Hope this helps, And of course if you have tips, dont hesitate.... Frank
×