Отрывные меню
Qt предоставляет возможность реализации отрывных меню (tear-off menu). Нажатие мышью на прерывистую линию приводит к тому, что всплывающее меню отделяется от меню верхнего уровня, превращаясь в отдельное окно, которое свободно перемещается. Такое меню очень удобно, например, для настройки конфигураций программы.
#include <QtGui>
int main(int argc, char** argv)
{
QApplication app(argc, argv);
QMenuBar pmnuBar;
QMenu* pmnu = new QMenu("&Menu");
pmnu->setTearOffEnabled(true);
pmnu->addAction("Item&1");
pmnu->addAction("Item&2");
pmnu->addAction("Item&3");
pmnu->addAction("&Exit", &app, SLOT(quit()));
pmnuBar.addMenu(pmnu);
pmnuBar.show();
return app.exec();
}

Чтобы задать отрывное меню, сначала необходимо вызвать из виджета меню pmnu метод setTearOffEnabiedo, передав ему значение true — это отобразит линию отрыва на верхнем бордюре всплывающего меню.
Читать далее: Контекстные меню