目前,我有一个QListWidget,其viewMode设置为Icon

有没有一种方法可以使用自定义窗口小部件或绘画而不是图标?

mTestLV = new QListWidget;

mTestLV->setIconSize(QSize(128, 128));
mTestLV->setViewMode(QListView::ViewMode::IconMode);

auto icon = QIcon("../../Resources/PCPP.jpg");

for (size_t i = 0; i < 64; i++)
    mTestLV->addItem(new QListWidgetItem(icon, "naaaame"));

最佳答案

您可以使用setItemWidget在QListWidgetItem中显示小部件。只需创建一个QListWidgetItem,将其添加到您的QListWidget中,然后在该项目上设置自定义窗口小部件即可:

QListWidgetItem *item = new QListWidgetItem();
CustomWidget *custom = new CustomWidget();
mTestLV->addItem(item);
mTestLV->setItemWidget(item, custom);

关于c++ - 如何用自定义小部件替换QListWidget的图标?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47107703/

10-16 04:32