私はPythonとQt4を使って画像のサムネイルの配列を表示しようとしています。私の問題は、グリッドの列の量を計算したくないため、アプリケーションのサイズが変更されたり、サムネイルが大きくなったりすると、列の数が自動的に変更されるということです。 実際にQlabelを使用したいのですが、イメージにはファイル名とボタンが付いてくるからです。それを行う簡単な方法はありますか?そのようなPyQtを使って可変列グリッドを作成するには
何か:
私はPythonとQt4を使って画像のサムネイルの配列を表示しようとしています。私の問題は、グリッドの列の量を計算したくないため、アプリケーションのサイズが変更されたり、サムネイルが大きくなったりすると、列の数が自動的に変更されるということです。 実際にQlabelを使用したいのですが、イメージにはファイル名とボタンが付いてくるからです。それを行う簡単な方法はありますか?そのようなPyQtを使って可変列グリッドを作成するには
何か:
Brendan Abelの答えは、Qtの力を使うための、エレガントな正しい方法です。しかし、モデルビューのアーキテクチャーが重すぎるとわかった場合は、をhereに示すように使用することをお勧めします。
かなり簡単に実装することができ、ニーズに合っている可能性があります。
あなたはQGraphicsView
を使用してになります。組み込みのウィジェットに似ていない本当のカスタムウィジェットのための優れたビルディングブロックです。それは、モデル/ビューアーキテクチャを使用し、より制限されたQLayout
配置システムに頼るのではなく、各アイテムがどのようにどこに描かれているかを無制限の柔軟性を可能にします。
FlowLayoutは私にとって完璧に機能しました。ありがとうございました!この1つを使用しました:https://github.com/cgdougm/PyQtFlowLayout –
このPyQt5バージョンが私には分かりましたhttps://github.com/baoboa/pyqt5/blob/master/examples/layouts/flowlayout.py – Jason