QListWidget:项目单击上的事件
QListWidget : Event on item click
基本上,我有以下内容:
一个QListWidget,里面有一些项目,像这样:
ListMail
是我的QListWidget。在这个QListWidget中,我有这样的元素:"Mail 1", "Mail 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)
,它将告诉您单击了哪个项目。你可以把这个信号连接到你自己的插槽。还有其他相关的信号。
相关文章:
- SDL2 + Win32 API 菜单栏单击事件不起作用
- 如何在 C++ 中的 WebKitX ActiveX 控件中设置单击事件
- 单击QCHART图的轴时捕获鼠标事件
- Ctrl 左键单击事件捕获QT
- MFC Rich Edit Control 2.0接收到单击事件
- 忽略父 Qt 快速图像的透明区域的鼠标区域单击事件
- Qt C++单击按钮的事件
- GtkTreeView列标题单击事件
- 检测鼠标中键单击事件
- 如何处理列表控制标头中的右键单击事件
- 事件仅在单击按钮时检查
- 将鼠标单击事件添加到使用QtCreator创建的QGraphicsView中
- 如何防止成员 QWidgets 或 QDialog 对象在鼠标单击对话框后从 QMainWindow 接管关键事件
- 将单击事件分配给 wxPanel 实例
- 是否可以在 MFC 按钮控件上检测到鼠标右键单击事件
- X11 中单击事件上的全局鼠标挂钩
- 如何在用户单击wxWidget事件时打开Web链接
- 使用 C++/WinAPI/MFC 在编辑/文本框控件上捕获特殊单击事件
- 我在C++中创建单击事件时遇到了一些问题
- 如何在单击任务栏期间捕获隐藏/还原事件