基本上,我有以下内容:
一个 QListWidget,里面有一些像这样的项目:
ListMail
是我的 QListWidget。
在这个 QListWidget 中,我有如下元素:“Mail 1”、“Mail 2”、...
而且我不知道如何在(例如)“邮件 1”上发出信号绑定(bind)到插槽 (onClick) 或类似的东西。
我已经尝试过类似的东西:
connect(ui->listMail->selectedItems(0), SIGNAL(triggered()), this, SLOT(openMessage())
,但是根本不起作用...
有什么帮助吗?
谢谢!
最佳答案
您必须绑定(bind)到 itemClicked
信号。该信号将为您提供一个 QListWidgetItem*
,这是被点击的项目。然后您可以检查它并检查它是否是第一个:
MyClass::MyClass(QWidget* parent)
: QWidget(parent)
{
connect(ui->listMail, SIGNAL(itemClicked(QListWidgetItem*)),
this, SLOT(onListMailItemClicked(QListWidgetItem*)));
}
void MyClass::onListMailItemClicked(QListWidgetItem* item)
{
if (ui->listMail->item(0) == item) {
// This is the first item.
}
}
关于c++ - QListWidget : Event on item click,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15311241/