Qt Creator 报错 moc_mainwindow.cpp:-1: error: undefined reference to `MainWindow::mouseDoubleClickEven

本文解决在Qt5开发中遇到的鼠标双击事件未响应的问题。详细介绍了错误信息和原因,即在mainwindow.h中声明了mouseDoubleClickEvent但未在对应cpp文件中实现。并给出了解决方案,即在mainwindow.cpp中添加该事件的空实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

尝试按照《Qt5开发及实例》运行鼠标事件程序。报错。

moc_mainwindow.cpp:-1: error: undefined reference to `MainWindow::mouseDoubleClickEvent(QMouseEvent*)'

中文提示:找不到moc_mainwindows.cpp文件

产生该问题的根本原因是:

在mainwindow.h文件中声明了 void mouseDoubleClickEvent(QMouseEvent *e);

但在对应的 mainwindow.cpp文件中并没有做对应的实现。

因此,应当在mainwindows.cpp文件中 做对应的实现,哪怕函数体内部啥也不写

void MainWindow::mouseDoubleClickEvent(QMouseEvent *e){}

 

另外,关于为什么没有对QMouseEvent *e进行实例化,像mousePressEvent ()方法也能够实现相应的操作:因为在父类中已经对这些方法进行了实现,在这里只是对它进行一个override,父类中会自动调用override的这些方法,并传入参数。

 

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值