QMenu наследник QObject. Следовательно тебе надо что то типа такого:
const QObjectList list = menu.children();
for(int i = 0; i < list.size(); ++i)
{
if (QAction * action = qobject_cast<QAction*>(list)) {
if (action->text() == text) { // нашли то что хотели
...
}
}
}
Думаю изменения с поиском в подменю не составят проблем