qtcreatorcmake导入到vs

qtcreatorcmake导入到vs,第1张

着陆咯

原创

关注

1点赞·1106人阅读

VS2015+Qt5.9.4环境下

第一步、首先在Qt Creator创建一个新项目,选择“其它项目”,再选择Qt 4设计师自定义控件,再点击“choose”创建;

第二步,定义项目名称跟路径,这里我命名为"RoundButton",路径设置为默认;

点击下一步

再下一步

第三步、将控件的类重新命名,我这里命名为"RoundButton",这里的类名类似Qt控件名的“QPushButton” 、“QLabel”之类;

然后一直下一步,完成

完成自定义项目创建

其中roundbutton.h跟roundbutton.cpp就是我们要自定义的部分,在这里不喜欢一张白纸,啥都没有,roundbutton.h/cpp文件。

第四步、右击项目,点击“添加新文件”,选择"Qt",再选择“Qt 设计界面类”,选择“Choose”

选择“QWidget”作为基类界面

将类名命名为之前一样的名称“RoundButton”

点击“下一步”、“完成”会d出一个overwrite重写的提示,就是将原先的覆盖掉,选择“ok”是。

会d出个提示,选择“Yes to All”

自此又回到了我们熟悉的Ui设计师界面,我们可以在上面自由拖拽控件 ,也可以通过重绘函数paintEvent(QPaintEven *event)绘制我们所需的界面。

第五步、假设在这里你已经自定义好了你需要的控件,Release 项目,找到项目路径下的,roundbuttonplugin.dll跟roundbuttonplugin.lib文件

将他们拷贝到Qt设计师的目录中

第六步、进入VS Qt项目,打开Qt 设计师 - Qt Designear ,在自定义窗口部件可以看到我们自定义控件,我们就可以愉快的像耍QPushButton一样 *** 作RounButton控件,但是你在编译的时候会发现会有link链接之类的错误。

第七步、接下来就是要处理上面的编译链接错误,首先将自定义控件项目下的ui_roundbutton.h文件拷贝到VS Qt项目下GeneratedFiles文件中,对需要手动拷贝进去。

同时将自定义控件项目下的roundbutton.h跟roundbutton.cpp拷贝到VS Qt项目的同级目录下,并添加进入项目。

最后编译项目,可以顺利通过,至此Qt Creator 自定义控件加入到VS Qt项目完成

Qt5.7.1

CMake 3.10.2

opencv-3.3.0-vc14

右键“我的电脑”——属性——高级系统设置——环境变量,我的路径是C:\Qt\Qt5.7.1\Tools\mingw530_32\bin,如图所示

打开CMake,设置源码的路径和输出路径,然后点击Configure,选择如所示

Next,配置c和c++,我的路径如下

点击Finish,等待加载完毕,暴很多红项

在Search框内搜索WITH_QT和WITH_OPENGL,都打上勾,再点击Configure

此时还有这几项是红的,点击ADD Entry,添加“QT_MAKE_EXECUTABLE”,并选择qmake的路径如图所示

在Search搜索CMAKE_BUILD_TYPE,修改value成  Release 或RelWithDebInfo

再次点击Configure,然后点击Generate

打开cmd命令提示符,进入输出文件夹并编译

这里的8根据自己电脑配置而定,8核cpu  我这里填8

如果编译过程中出现类似这样的错误:

解决办法:在CMake搜索ENABLE_PRECOMPILED_HEADERS,把这个项的打勾去掉,然后点Configure,Generate,再执行编译:ming32-make -j 8

如果遇到类似这样的错误

解决办法:根据提示的路径去opencv源码文件找cap_dshow.cpp文件,我的在D:\tmp\opencv\sources\modules\videoio\src文件夹里,用记事本打开cap_dshow.cpp,搜索

然后在上面添加

再次执行编译:ming32-make -j 8

方法同上,把D:\tmp\opencv-build\install\x86\mingw\bin添加到path里

打开Qt,新建一个项目,Qt Widgets Application 

调试

如果出现错误:

解决办法:点击左侧的项目,填好构建目录,如图所示:

修改.pro文件,添加

这里需要注意一下330,有些版本是320

修改完后,点击构建 ,执行qmake

修改mainwindow.cpp

效果:


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存