簡體   English   中英

QListWidget:項目點擊時的事件

[英]QListWidget : Event on item click

基本上,我所擁有的是以下內容:

一個QListWidget,其中包含一些項目,如下所示:

ListMail是我的QListWidget。 在這個QListWidget中,我有以下元素:“郵件1”,“郵件2”,...

我不知道,我怎么能在(例如)“郵件1”綁定到插槽(onClick)或類似的東西上發出信號。

我已經嘗試過這樣的事情: connect(ui->listMail->selectedItems(0), SIGNAL(triggered()), this, SLOT(openMessage()) ,但它根本不起作用......

有幫助嗎?

謝謝 !

您必須綁定到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.
    }
}

QListWidget有一個信號QListWidget::itemPressed(QListWidgetItem *item) ,它會告訴你單擊了哪個項目。 您可以將此信號連接到您自己的插槽。 還有其他相關信號。 請參閱文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM