关于 qlistwidget的咨询
本帖最后由 0flying0 于 2012-12-07 11:58:12 编辑 看到这个方法不知道怎么使用
void setItemWidget(QListWidgetItem *item, QWidget *widget);
我的代码如下:
这个是继承qlistwidget的类的一段代码
QListWidgetItem pieceItem= new QListWidgetItem(this);
pieceItem->setIcon(QIcon(pixmap));
if(!appname.isEmpty())
{
pieceItem->setText(appname);
pieceItem->setFont(QFont("宋体",12,3,false));
}
pieceItem->setData(Qt::UserRole, QVariant(pixmap));
pieceItem->setData(Qt::UserRole+1, location);
qDebug("set Appid pieceItem %s ",qPrintable(appid));
pieceItem->setData(Qt::UserRole+2, appid);
pieceItem->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable
| Qt::ItemIsDragEnabled);
//0, new QSpinBox()
this->setItemWidget(pieceItem,new QSpinBox());
item显示的效果只显示了icon,不知道如何使用对应的widget。
我想实现的效果是 点击item之后,开启对应的一个widget。
[解决办法]
简化一下,做个测试:
QListWidgetItem *item= new QListWidgetitem;
listwidget->addItem(item);
listwidget->setItemWidget(item, widget(随便new个控件,如QPushButton));
是不是icon的问题?