在MFC中有ClistCtrl或者CListView,
在Qt中有QListWidget,继承与QListView;
示例:
QListWidget contentsWidget ;
void slot_create_QListWidget()
//创建 QListWidget;
{
contentsWidget = new QListWidget;
contentsWidget->setViewMode(QListView::IconMode);
contentsWidget->setIconSize(QSize(96, 100));
contentsWidget->setMovement(QListView::Static);
contentsWidget->setMaximumWidth(128);
contentsWidget->setSpacing(12);
addpic();
item_connect();
contentsWidget->show();
}
//
void addpic() //文字,图片;
{
contentsWidget->addItem("test text");//添加文字;
//添加图片:
QListWidgetItem *configButton = new QListWidgetItem(contentsWidget);
configButton->setIcon(QIcon("G:\\t.png"));
configButton->setText(tr("Configuration"));
configButton->setTextAlignment(Qt::AlignHCenter);
configButton->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled);
}
//事件链接,相应函数;
void item_connect()
{
connect(contentsWidget,
SIGNAL(currentItemChanged(QListWidgetItem*,QListWidgetItem*)),
this, SLOT(on_item_changed(QListWidgetItem*,QListWidgetItem*)));
}
void on_item_changed(QListWidgetItem * current, QListWidgetItem * previous)
{
MessageBoxQt( current->text() );
}
//可以参考 Qt示例examples\widgets\draganddrop\puzzle 和 "Qt 助手"获取更多帮助信息;