作为与Qt
的noobie我无法弄清楚如何创建QMenu
的矢量。
使用C++
我得到了以下(简单)的想法:
std::vector<QMenu> *subMenus;
然后使用for-loop
创建一定数量的菜单。
for (int i = 0; i < List.size(); ++i)
{
subMenus[i] = new QMenu('some name',MainMenu);
MainMenu->addMenu(subMenus[i]);
}
List的大小是一个很大的数字(~40)。问题是,在这样做时,我面临以下错误消息,引用索引i
:
expression must have a constant value
。
我不确定是否应该使用append或push back to subMenus以避免此错误。
谢谢
你可以使用这样的东西:
QVector<QMenu*> menuVector;
for (int i = 0; i < 40; ++i)
{
auto* menu = new QMenu('some name', MainMenu);
menuVector.push_back(menu );
MainMenu->addMenu(menu);
}