QScrollArea

Qt入門本でアイコンエディタにQScrollAreaを使った例があったが、
サイズ変更に関しての記述が無いようだった。
せっかくアイコンエディタにzoom機能があるのだから、
拡大したときにスクロールバーもそれに対応させたい。
Qt入門本をそのまま書いてみてもやはりzoomによるスクロールバーの変化がなかったので、
調べてみたらあっさり見つかる。


QScrollArea内のメソッドで、
アイコンエディタのsetZoomFactorメソッドを呼び出してアイコンエディタの拡大を行った後、

	widget()->resize(widget()->sizeHint());

とすると、ウィジェットがサイズ変更にあわせてくれる。
仮想関数として既に定義されているsizeHintを呼び出すだけ。


widget()はsetWidget()で設定したモノは(アドレス的な意味で)同じはずなんだけど、
これでスクロールバーの大きさがなぜ変わるのがわからぬ。
widgetのサイズ変更を検知するなら最初からやれって思うんだが。
Qtは謎い。