I am drawing some data in a widget added to a QScrollArea. I scale the data/widget depending on the available size: if the size is too small then I won't scale and that is when I want scroll bars to appear so that the user can scroll to view all the data.

I subclassed QScrollArea so that it emits a signal after a resizeEvent. On receiving the signal the child widget gets the size of it's parent to calculate the scale to use and then resizes itself. This works quite well with one problem: when I resize the application window, the scroll bars don't always update to reflect the change in size of the QScrollArea relative to the content.

How can I tell the QScrollArea it should recalculate the size of the handles on the scroll bars ? Or is there a way to inform it that the content has changed size ?