Я использую Qt для создания базового GUI приложения, и у меня есть несколько вопросов .. Так что я создал графический интерфейс пользователя, он отлично работает, и я думал, что я хотел бы проверить что-то ..Владение QAction в QMenu
for(int i=0; i < 100000; i++)
{
menu = new QMenu(this);
act = new QAction("About", menu);
menu->addAction(act);
connect(act, SIGNAL(triggered()), this, SLOT(slotHelpAbout()));
menuBar()->addMenu(menu)->setText("Help");
}
menuBar()->clear();
Я использую QMenuBar класса QMainWindow и заполнить его с QMenu, которые также заполнены с QAction для Wich подключить сработавшей сигнал несколько слотов .. Это работает хорошо, но когда я вызываю ясно, что следует удалить пункты меню/действия, содержащиеся в QMenuBar .. Я проверяю диспетчер задач и использование памяти по-прежнему огромно .. Даже после:
QList<QAction*> lst = menuBar()->actions();
for(int i=0;i < lst.length(); i++)
{
delete lst.at(i);
}
Нельзя ли освободить всю память, используемую QMenus и QActions?
для меня занимает около 4-5 секунд, чтобы очистить. Но панель меню очищена – Neox
да, строка меню очищается, но память по-прежнему сохраняется. – elephantintheroom