QAction *action = qobject_cast<QAction*>(sender()); QMenu *menu = qobject_cast<QMenu*>(action->parent()); QPushButton *button = qobject_cast<QPushButton*>(menu->parent());没有获取到menu对象
时间: 2024-02-05 07:11:09 浏览: 51
Qmenu类的使用方法
这段代码中,如果无法获取到menu对象,可能是由于action对象的父对象并非QMenu,或者QMenu的父对象并非QPushButton。
你可以尝试使用以下代码分别获取action、menu、button对象的父对象,看看是否符合预期:
```
QObject *actionParent = action->parent();
QObject *menuParent = menu->parent();
QObject *buttonParent = button->parent();
```
如果发现获取的父对象并非预期的类型,可能需要检查代码中对象的创建和添加顺序。
阅读全文