【发布时间】:2018-02-11 08:48:34
【问题描述】:
我有两个处于图标模式的列表小部件 list1 是一个包含 100 个小部件项目的列表(每个小部件项目都是一个图标,里面有一个包含 3-4 个项目的组合框)。 那些组合框项目是永远不会改变的图标的数据,它们与小部件项目打包在一起,listwidget2 是空的,我只想能够从 1 拖动小部件项目(图标和带有项目的组合框)并制作一个收藏列表对于 list1 的某些小部件,组合框项目或 list1 的小部件项目不会发生任何变化,它们将始终具有相同的数据, 问题是每次我拖动小部件时,只会将图标复制到另一个列表小部件。
QDir dir ("icons");
QFileInfoList list = dir.entryInfoList(QDir::AllEntries |
QDir::Dirs|QDir::NoDotAndDotDot);
for(int i=0 ; i < list.length() ; i++){
dir_names.push_back(list.at(i).baseName());
/*Setting the icon*/
QIcon icon;
icon.addFile(list.at(i).absoluteFilePath(), QSize(), QIcon::Normal,
QIcon::Off);
QListWidgetItem *iconItem = new QListWidgetItem(ui->listWidget);
iconItem->setIcon(icon);
QComboBox *box = new QComboBox;
QListWidgetItem *textItem = ui->listWidget->item(i);
ui->listWidget->setItemWidget( textItem,box);
box->setFixedHeight(18);
box->addItem(list.at(i).baseName());
}
【问题讨论】:
标签: c++ qt qt5 qcombobox qlistwidget