QListWidget にアイコンのみを表示したい。テキストを空の文字列に設定しました。アイコンを選択すると、テキストの場所に空の選択された四角形が表示されます。スクリーンショットを参照してください どうすればこの空きスペースを取り除くことができますか?!
12261 次
4 に答える
4
QListWidget にアイコンを追加するにはどうすればよいですか? これはうまくいくはずです(リソースファイルからアイコンをロードしています):
ui->listWidget->addItem(new QListWidgetItem(QIcon(":/res/icon"), ""));
編集
スクリーンショットから、空の文字列に対応するアイコンの下に空白があることが問題であることがわかります。リスト ウィジェット アイテムのフォントに非常に小さなサイズを設定することで、この動作をハッキングできます。
QListWidgetItem *newItem = new QListWidgetItem;
QFont f;
f.setPointSize(1); // It cannot be 0
newItem->setText("");
newItem->setIcon(QIcon(":/res/icon"));
newItem->setFont(f);
ui->listWidget->addItem(newItem);
これでうまくいきます。ただし、setItemWidget
関数を使用してカスタム設計のウィジェットを使用したり、QListView
とデリゲートを使用したりすることもできます。
于 2011-11-05T23:21:15.297 に答える
1
私の解決策は、アイテムのアイコンのサイズで setSizeHint() を呼び出すことでした。パディングがないとセレクションボックスが切れてしまうので少しパディングを入れました。
QListWidgetItem * pItem = new QListWidgetItem(icon, "");
pItem->setSizeHint(iconSize + QSize(4,4));
listWidget->addItem(pItem);
于 2014-06-12T18:25:09.490 に答える