ディレクトリ内のすべての画像ファイルを反復処理してサムネイルを生成する QLabel を継承するカスタムウィジェットを備えた QHBox があります。
この部分は正常に動作していますが、画像を表示するための中央の QLabel ウィジェットでサムネイルが生成された元の画像を表示する機能を実装する必要があります。
これを行う最良の方法は何ですか?現在、clicked() シグナルは QLabel(サムネイル) からの QPixmap のみを表示しています。必要なのは、中央にある QLabel に元のフルサイズの画像をロードすることです。
各サムネイルを一意のフルサイズの画像で識別するには、ある種のリストが必要になると思いますが、そのようなものを実装する方法がわかりません。
何をすべきか少し迷っているので、これを実装する必要があるかどうか教えてください。
私のコードは今次のようになります:
QList<ImageLabel *> labels;
int imagenum = 0;
foreach(const QString &path, files) {
QPixmap px(path);
labels.append(new ImageLabel);
labels[imagenum]->setPixmap(px.scaledToHeight(90));
qhbox->addWidget(labels[imagenum]);
connect(labels[imagenum], SIGNAL(clicked(const QPixmap&)), this, SLOT(setImage(const QPixmap &)));
imagenum++;
}
よろしくお願いいたします。