Qt C++ |单击 QListWidget 中的项目时,如何获取链接到索引的字符串数据?
Qt C++ | how can I get the string data that is linked to the index when I click an item in a QListWidget?
我有这个插槽,我希望能够使用正在传递的索引处的字符串。我怎样才能得到它?
void Dialog::on_list_Favorites_2_clicked(const QModelIndex &index)
{
}
由于您使用的是 QListWidget
而不是 QListView
,因此您还应该使用信号 itemClicked(QListWidgetItem*)
而不是 clicked(const QModelIndex &)
。
void Dialog::on_list_Favorites_2_itemClicked(QListWidgetItem* item)
{
qDebug() << item->text();
}
在这种情况下,您可以使用以下函数。
QListWidgetItem * QListWidget::itemFromIndex(const QModelIndex & index) const
然后,item的文字可以通过QString QListWidgetItem::text() const
使用
void Dialog::on_list_Favorites_2_clicked(const QModelIndex &index)
{
QListWidgetItem* pItem = m_listWidget->itemFromIndex( index );
Q_ASSERT( pItem );
if ( pItem )
{
QString itemName = pItem->text();
}
}
我有这个插槽,我希望能够使用正在传递的索引处的字符串。我怎样才能得到它?
void Dialog::on_list_Favorites_2_clicked(const QModelIndex &index)
{
}
由于您使用的是 QListWidget
而不是 QListView
,因此您还应该使用信号 itemClicked(QListWidgetItem*)
而不是 clicked(const QModelIndex &)
。
void Dialog::on_list_Favorites_2_itemClicked(QListWidgetItem* item)
{
qDebug() << item->text();
}
在这种情况下,您可以使用以下函数。
QListWidgetItem * QListWidget::itemFromIndex(const QModelIndex & index) const
然后,item的文字可以通过QString QListWidgetItem::text() const
void Dialog::on_list_Favorites_2_clicked(const QModelIndex &index)
{
QListWidgetItem* pItem = m_listWidget->itemFromIndex( index );
Q_ASSERT( pItem );
if ( pItem )
{
QString itemName = pItem->text();
}
}