我是一个QT的初学者,第一次发帖~可能
问题比较低级,请给指点下 谢谢!!
现在我想实现在dockWindow中点击鼠标右键快捷菜单的功能。因为不知道有什么好的办法,我尝试自定义几个信号
//rightbutton Menu
connect(m_deleteAction,SIGNAL(triggered()),this,SLOT(rightButtonMenuDelete()));
connect(this,SIGNAL(sendRightButtonDelete(QTreeWidgetItem*)),m_osgWidget,SLOT(removeMapLayer(QTreeWidgetItem*)));
void MyDockWindow::rightButtonMenuDelete()
{
QTreeWidgetItem *item = m_dockTree->itemAt(QCursor::pos());
emit sendRightButtonDelete(item);
}
结果在
bool OSGWidget::removeMapLayer(QTreeWidgetItem *item)
{
QString itemText = item->text(0);
。。。。。
}
出错
参考
connect(m_dockTree,SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)),m_osgWidget,SLOT(removeMapLayer(QTreeWidgetItem*)));这个connect没问题,
//add item
QTreeWidgetItem *item = new QTreeWidgetItem;
item->setText(0,getFileName(fileName));
m_MyDockWindow->getDockTree()->addTopLevelItem(item);