Обычно, щелкните правой кнопкой мыши по строке заголовка окна, чтобы вызвать всплывающее окно system-menu
.Показать системное меню по запросу, в QWidget
Мой вопрос: Как заставить это меню для вызова по требованию: как, например, при нажатии на кнопку.
QApplication a(argc, argv);
QWidget window;
window.resize(200,100);
QPushButton button(&window);
button.connect(&button, &QPushButton::clicked, [&window]()
{
// here show the window system menu:
// window.showSystemMenu(QPoint(0,0));
});
window.show();
a.exec();
Примечание: для использования этого сигнала/слота с лямбдой требуется C++ 11. Но чистый C++ 03 также действителен.
EDIT:
Я на самом деле создать это меню как QMenu, который я заселить с таким же содержанием, чем меню по умолчанию Windows. Это будет работать на любой платформе, но контент может отличаться от ожидаемого.
Я все еще ищу ответ, который не использует библиотеки для каждой платформы. Говорят по-другому, используя QT, как указано в TAG. –