qt如何给menu的下拉菜单添加响应事件

qt如何给menu的下拉菜单添加响应事件,第1张

1、创建菜单里可以通过menuBar方法,这个方法好像是QWiget的方法

QMenuBar *mBar = menuBar()

2、添加菜单

QMenu * menu = mBar->addMenu("文件")

3、添加菜单项

QAction * action = menu->addAction("新建")

4、给QAction创建点击事件

connect(action ,&QAction::triggered ,this ,[=](){

//里面写点击后执行的函数就行

})

5、设置QAction不可用

QAction * QToolBar::addAction ( const QIcon &icon, const QString &text )

保存此函数的返回值,并与相应的slot函数进行connect即可。

按照你所说,你只是想要主菜单点击时,就会调用一段程序吧,那么你可以不用action,如果说你这action在别的地方没用的话。

如上所说,你应该重写QMenu(也就是你的主菜单)的mousePressEvent事件,也就是鼠标按下事件,然后在这个事件调用你想要的方法,或者直接在这个事件里面执行你的 *** 作。

如果不懂,百度“Qt事件”,比如Qt鼠标单击事件什么的,看看如何重写相关事件。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11833135.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存