QListWidget:项目点击时的事件

Yan*_*rit 8 c++ qt

基本上,我所拥有的是以下内容:

一个QListWidget,其中包含一些项目,如下所示:

ListMail是我的QListWidget.在这个QListWidget中,我有以下元素:"邮件1","邮件2",...

我不知道,我怎么能在(例如)"邮件1"绑定到插槽(onClick)或类似的东西上发出信号.

我已经尝试过这样的事情: connect(ui->listMail->selectedItems(0), SIGNAL(triggered()), this, SLOT(openMessage())但它根本不起作用......

有帮助吗?

谢谢 !

and*_*ref 8

你必须绑定到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.
    }
}
Run Code Online (Sandbox Code Playgroud)