Qt库中也有一些封装较好的类,所以在MFC中直接用,会方便很多;
一般配置VC环境两个方法,1是当前工程配置,2是全局VC环境配置,可以参考网上文章;
这里我讲一下当MFC前工程配置Qt:
1:建立一个MFC工程;
2:配置Qt头文件路径;
3:配置lib库文件路径;
4:添加相关的库;
5:
注:相关配置,可以直接参考复制 在VS中添加的Qt项目配置;
6:Qt在MFC中应用(QFileDialog 应用):
(1):包含相应Qt头文件(可以直接从一个Qt工程中复制);
#include <QtWidgets/QApplication>
#include <QtWidgets/QMainWindow>
#include <QFileDialog>
(2): 相关类运行前执行 QApplication a(argc, argv);
QApplication 包含了界面绘图的相关执行,如果不添加Qt界面部分执行会出现错误;
QApplication 对象可以作为成员函数,或静态函数,获取每次执行前执行作为栈变量都可以;
建议在程序执行前,以静态变量执行,如:
char * pstr = "可执行程序路径";
int argc = 1;
char * agrv[1];
agrv[0] = pstr;
static QApplication a(argc, agrv);
注:这里不需要执行 a.exe();
因为这个函数是获取系统消息,出发你需要Qt相关消息,具体可以查找相关文章;MFC有相关的消息循环;
(3):
void Ctmfc8Dlg::OnBnClicked_QFileDialog()
{
// TODO: 在此添加控件通知处理程序代码
QFileDialog qf;
qf.exec();
}
//
关于Qt消息循环和界面类的添加,需要将相关类头文件转化一个moc文件,具体可以参考:
http://blog.csdn.net/neil_lee_/article/details/8874581
http://hi.baidu.com/zhujianzhai/item/3d6d834473e0c7aedf2a9fc0
//这里有一篇关于MFC和Qt界面的文章<<MFC to Qt Migration - Walkthrough>>
http://doc.qt.digia.com/solutions/4/qtwinmigrate/winmigrate-walkthrough.html