
原创
关注
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项目完成
1、选择和开发者一致的Qt版本。2、修改对应的宏QTDIR。
3、删除当前工程下的文件。
4、d出there'snoQtversionassignedtothisprojectforplatformwin32,修改设置Qt的版本。
5、编译的静态库修改过文件夹名字或路径。F11调试的时候可以自己设置正确的路径。
qt中添加windows vs 生成的静态库,需要注意:
qt使用的编译器版本要和vs版本, *** 作系统位数要对应。
例如:用 vs2015 x86生成的了release 和debug两种静态库
相应的QT也要配置vs2015 32 编译器。
把之前vs 生成的静态库的头文件和库准备好
打开qt 中打卡 工程 .pro文件 右键选择 添加库选择外部库
这样我们release和debug版的静态库都添加近工程了。
如果之前已经生成过编译后的文件夹
再次生成时可能遇到 error LNK2019: 无法解析的外部符号 之类的错误信息。
这个问题只要把上面的文件夹删除,从新编译即可。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)