1
QTreeViewの下部にあるアイテムを展開すると、ビューは自動的にスクロールして新しく展開されたアイテムを表示しません。私は、拡張を検出し、適切なときにスクロールを自分で実行することでこれを修正できます。QTreeViewの下部にスクロール可能な空白を追加するには
しかし、私は、ユーザーが現在許可されているよりも遠くに表示をスクロールできるようにしたいと考えています。現在、ツリーが大きすぎて可視領域に収まらない場合は、一番下の行が表示されるまで、ビューをスクロールできます。
私は、QTreeViewのサイズ計算を騙して行うべきだと考えていますが、ソースダイビング後でもQTreeViewとそのベースQAbstractScrollAreaとのやりとりが分かりません。
それ以外の場合は、ダミーの編集不可能な行をデータモデルに追加することができます。
に関しては、おかげでこのようななめらか。ビューは常に最大値を調整しているので、問題はそれを行うのに適した場所を見つけることです。私が今までに見つけた最高のものは、スクロールバーです。レンジチェンジ、無限再帰に対するガード付きです。 –
あなたのモデルからアイテムを取り除くたびに、別の場所を更新するといいでしょう。 –
私が言うことができる限り、そのアプローチは致命的です。 QTreeViewが信号の送信後にスクロールバーを更新するため、拡大/縮小されたスクロールバーの更新は機能しません。そのため、低レベルの「rangeChanged」をインターセプトする必要があります。 –