2017-05-19 12 views
0

プロジェクトをQt 5.7からQt 5.8にアップグレードしたい。私はQListWidgetの画像を表示する機能を持っています。Qt 5.7 - > 5.8 QListwidgetにQIconを追加する

私のプロジェクトでは、視聴者は画像からサムネイルを作成し、QIconに変換します。 QIconを作成したら、QListWidgetに新しいQListwidgetItemを挿入して追加します。

5.7ではうまく機能しましたが、5.8ではサムネイルは表示されません。

belowsのはQListWidgetにコード

QIconです:

QIcon tmpIcon(pathOfImage); 

ui.listWidget->addItem(new QListWidgetItem(tmpIcon, pathOfImage)); 

これが起こる可能か?私は5.8にどのように調整できますか?


  • 5.7ではそれが動作します:5.8で

    In 5.7 it works!

  • が、それはdoesntの:

    In 5.8 ....


しかし今、私は5.8に小さなサイズのPNGを表示できることを発見しました。

私は何が問題なのか分かりません。多分画像のサイズやフォーマットですか?

5.35では、QListwidgetには影響しませんでした!

+0

プロパティ 'uniformItemSizes'は何とかこの問題につながる' true'に設定されました。 –

+0

ありがとうございます。私はそれを徹底的に調べます! –

+0

ui.listWidget-> setUniformItemSizes(false); 私は上記のコードを使用しましたが、動作しませんでしたTT –

答えて

0

私は実験を行いました。

QListWidgetItem* newItem = new QListWidgetItem(); 
    newItem->setIcon(tmpIcon); 
    newItem->setText(pathOfImage); 

この後、newItem(QListWIdgetItem)のアイコンを取得しようとしましたが、これをpngに保存しました。

QIcon te2 = newItem->icon(); 
    QPixmap test = te2.pixmap(te2.actualSize(QSize(1024, 1024))); 
    QFile file1(te + "yourFile.png"); 
    file1.open(QIODevice::WriteOnly); 
    test.save(&file1, "PNG"); 

通常のJPGファイルは保存できませんでしたが、小さなロゴのpngファイルしか正しく保存できませんでした。私は、QIconとQListWitgetItemの間のセットプロセスが主な問題だと思います。

関連する問題