нужно чтобы по нажатию клавиши в виджете клавиши (скажем F10) это меню активировалось и открывалось подменю, короче что б можно было работать с меню с клавиатуры а не только мышкой.
Вообще, для таких целей используют "символы быстрого доступа" (в надписи контрола перед этим самым символом ставится знак амперанда):
p1 = new QMenu(QString::fromLocal8Bit("
&Настройки"));
Ну а вообще, если хочется сделать через F10 и т.п., то можно попробовать воспользоваться тем, что метод QMenuBar::addMenu() возвращает указатель на QAction (повесить на него Shortcut):
C++ (Qt)
menuBar = new QMenuBar(this);
menuBar->setObjectName("menuBar");
p1 = new QMenu("Settings");
QAction *actMenu = menuBar->addMenu(p1);
actMenu->setShortcut(...);