これは私の最初の質問ですので、ご容赦ください。
現在、私のプログラムには、キャンバスとして機能する親ウィジェットがあります。ユーザーは、実行時にウィジェットを親に追加または削除できます。これらのウィジェットには絶対位置が与えられます。つまり、レイアウトによって配置されません。追加されたウィジェットは、ユーザーが任意に移動できます。
ユーザーがボックスをドラッグしてウィジェットのグループを選択できるようにしたい。ユーザーがドラッグしているときに四角形を表示する部分は既にコーディングしています。ここで、その長方形 (領域) 内のすべてのウィジェットを取得できるようにしたいと考えています。
私は findChild() および findChildren() 関数を認識しており、実際に想定どおりに子を返します。しかし、「キャンバス」内には非常に多くのウィジェットが存在する可能性が高いため、検索を領域の境界に制限する方法が本当に必要です。(私がやっていることの性質上、非常に広い領域に何千ものウィジェットが広がっている可能性があります!)
これが私の質問です。私の最良の選択肢は何ですか? 先に進んで findChildren() を使用し、リストをループして、領域内の子を手動で見つける必要があります。それとも、findChild(x, y) を使用して領域内のすべてのピクセルをループする必要がありますか? それとも、プロセスを高速化するさらに簡単な解決策があるのでしょうか? findChildren(x, y, width, height) の線に沿った何か?
うまくいけば、私の質問は理にかなっています。私はできる限り物事を説明しようとしました。ありがとう!