本来在Qt中使用信号(SIGNALS)和槽(SLOT)的机制时,继承于QOBJECT基类,添加Q_OBJECT时,需要重新qmake一下就会自动生成moc文件,但在Vs中则不行,需要重新设置一下
解决方式无非就是生成moc文件
1.在需要编译头文件上右键选择【属性】->【配置属性】中选择常规,将项类型修改为“自定义生成工具”,应用后第二项会变配置一下【命令行】和【输出】,后在文件上右键编译
命令行:"$(QTDIR)" “%(FullPath)” -o “.GeneratedFiles$(ConfigurationName)moc_%(Filename).cpp”
输出:.GeneratedFiles$(ConfigurationName)moc_%(Filename).cpp
命令和使用cmd一样,下面说cmd
2.在CMD中使用moc “文件的绝对路径+xxx.h文件” -o “moc文件生成绝对路径+moc_xxx.cpp文件”(没有配置环境变量的需要进入Qt的安装目录编译器的bin目录,emm就是的目录)
一般没有报错就完事了
3.将文件的属性页中的项类型改为Qt Meta-Object Compiler (moc)似乎也好使没有测试过。。。
本文发布于:2024-01-29 15:18:01,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170651268516197.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |