`
buliedian
  • 浏览: 1243250 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

MFC与QT混合编程---在MFC程序中使用QT的组件

阅读更多

版权声明

请尊重原创作品。转载请保持文章完整性,并以超链接形式注明原始作者“tingsking18”和主站点地址,方便其他朋友提问和指正。

MFC QT 混合编程 --- MFC 程序中使用 QT 的组件

<!-- [if !supportLists]-->1. <!-- [endif]-->创建一个最简单的 MFC Dialog 程序。

<!-- [if !supportLists]-->2. <!-- [endif]--> BOOL CTestApp::InitInstance() 函数中增加
QMfcApp::instance(this);

跟踪到QMfcApp
的代码中可以清楚的看到该静态函数的功能是创建QApplication
实例。

<!-- [if !supportLists]-->3. <!-- [endif]-->重写CTestApprun方法。
       如下:
        这个我也没大搞明白是什么意思。
QT帮助上说:
QMfcApp:run()
 will then use that QMfcApp::instance, which must then be deleted explicitly using the global qApp pointer.
我也没搞懂什么意思。
4. <!-- [endif]-->testDlg.h文件中定义:
      QWinWidget *widget;
5. <!-- [endif]-->然后就很简单了。
CTestDialogOnCreate函数中加入:
widget = new QWinWidget( this );
QHBoxLayout *hbox = new QHBoxLayout( widget );
QLabel *label = new QLabel( "Enter text:", widget );
QLineEdit *edit = new QLineEdit( widget );
hbox->addWidget( label );
hbox->addWidget( edit );
widget->move( 0, 0 );
widget->show(); 
6. <!-- [endif]--> CTestDialog  OnDestroy 方法中: 

delete widget;

widget = 0;

<!-- [if !supportLists]-->7. <!-- [endif]--> qmake –project 生成的 .pro 文件中加入:

DEFINES -= UNICODE

DEFINES += _AFXDLL WINVER=0x0500

include(../../../src/qtwinmigrate.pri)

否则编译不过。

<!-- [if !supportLists]-->8. <!-- [endif]-->qmake nmake 运行一下

分享到:
评论

相关推荐

    MFC程序调用Qt界面

    ### MFC程序调用Qt界面知识点详解 #### 一、MFC与Qt简介 - **MFC(Microsoft Foundation Classes)**:...通过以上步骤,可以实现在MFC程序中调用Qt界面的功能,从而结合两者的优势,提高应用程序的灵活性和可扩展性。

    MFC调用QT类库

    在IT领域,尤其是在Windows平台下的桌面应用程序开发中,MFC(Microsoft Foundation Classes)和QT都是常用的框架。MFC是微软提供的一个C++类库,用于简化Windows API的使用,而QT则是由Qt公司开发的一个跨平台的C++...

    MFC调用QT页面

    在IT领域,MFC(Microsoft Foundation Classes)是微软提供的一套C++库,用于构建Windows应用程序,而QT则是一个跨平台的应用程序开发框架,广泛应用于桌面、移动和嵌入式系统。本文将深入探讨如何在MFC应用中调用QT...

    MFC程序调用Qt(DLL)界面显示

    一种解决方案是使用Qt的`QCoreApplication::exec()`方法启动一个新的事件循环,并在MFC中使用`AfxPumpMessage()`来同步消息。 此外,还需要注意的是,由于Qt和MFC对资源管理方式的不同,可能导致内存泄漏。因此,在...

    简易计算器的MFC和QT的编写

    下面将详细讨论如何在VS2010中使用MFC和QT4.7.1来实现一个简易计算器。 **MFC(Microsoft Foundation Classes)** MFC是微软为Windows应用程序开发提供的一套C++类库,它基于面向对象的编程理念,简化了Win32 API...

    QT调用dll和MFC调用QT的dll

    在软件开发中,有时我们需要在QT环境中调用动态链接库(DLL),或者将QT编译成DLL供MFC应用使用。这篇内容将深入探讨如何实现这些操作。 1. QT调用DLL: - 创建DLL:首先,你需要在QT环境中创建一个DLL项目,定义...

    Qt中调用MFC对话框

    QT是一个跨平台应用程序和UI开发框架。windows开Qt开发方法:一、Qt Creator+MinGW 或者 Qt Creator+VC++ Compiler二、QT4.8.5 for Windows(VS2015+VS...本实例为VS2015+Qt+Qt插件中开发Qt应用程序同时调用MFC对话框。

    QT中使用MFC的例子 可使用CString、MessageBox等MFC类和方法

    一个QT使用MFC的例子,示例为QT工程,其中引入MFC库,使用CString类,MessageBox方法进行了验证。示例工程为QT4+VS2013。此方式在QT3,QT4,QT5和VC6,VS2013,VS2015,VS2018中亦可使用。

    QT调用mfc dll和qt dll

    本文将深入探讨如何在QT环境中创建和使用DLL(动态链接库),以及如何实现QT与MFC(Microsoft Foundation Classes)之间的互操作性。 首先,我们来理解DLL的本质。DLL是一种共享库,它包含可由多个程序同时使用的...

    mfc调用qt所需六个文件

    `QWinWidget`可能是一个封装了`QWidget`的MFC窗口类,它允许在MFC应用中直接使用Qt的UI组件。这个类可能会处理如重绘、大小调整等窗口操作,并确保它们在MFC和Qt之间同步。 集成MFC与Qt的步骤通常包括: 1. **配置...

    DLL中封装Qt窗口和控件,并使用MFC和Qt调用的示例。

    将Qt组件封装到DLL中,需要考虑如何正确地初始化和清理Qt环境,以及如何处理Qt的信号与槽机制。 接下来,我们要讨论如何在MFC中调用这个DLL。MFC是微软提供的一个C++库,用于简化Windows API的使用,主要用于构建...

    qt-solutions-master.zip

    qtbrowserplugin 浏览器插件 qtlockedfile 锁定文件 qtpropertybrowser 属性编辑器 qtscriptclassic 脚本支持 qtservice 提供服务属性 qtsingleapplication 单例运行 ...qtwinmigrate DLl混合运行,主要是指MFC

    MFC调用Qt类库.zip

    1. **混合编程**:将MFC与Qt结合,意味着需要在一个项目中同时使用两个框架的API,这涉及到头文件的包含、链接器设置以及可能的命名空间冲突问题。 2. **Qt的 moc 工具**:MOC(Meta-Object Compiler)是Qt用于处理...

    qt-vsaddin-msvc2017-2.6.0-rev.18.vsix

    QT 是编写c++常用编译器,在MFC过时后,c++程序界面设计一般用QT编写,QT也能和VS结合起来使用,本文件就是装在vs2017下的插件

    Qt-Frameless-Window-DarkStyle-master.zip_MFC_treegnh

    9. **图标和图像**:可能在项目中使用的图形资源,以`.png`或`.svg`格式存储。 通过研究这个项目,开发者可以学习如何在Qt中实现无边框窗口,理解如何自定义窗口的边缘拖动和缩放行为,以及如何利用Qt的样式表系统...

    Qt界面动态库被MFC对话框调用

    简介:本人学习Qt一个星期了,利用Qt做的仿360界面,然后打包成动态库。 用C++的MFC对话框按钮调用Qt界面动态库,经测试成功。

    MFC 、QT等 程序图标修改器 图标

    在MFC中,图标通常与资源文件(.rc)关联,包含了应用程序的菜单、对话框、图标等元素。通过Visual Studio的资源编辑器,开发者可以方便地添加、修改和删除图标资源。但是,如果需要在程序已编译后更改图标,就需要...

    MFC-包含qt库的代码

    本项目"**MFC-包含qt库的代码**"结合了这两种技术,允许开发者在MFC应用中利用Qt的特性,比如丰富的UI组件和强大的网络功能。 在描述中提到的转换主要涉及`QString`和`CString`两种字符串类型。`QString`是Qt库中的...

    QT+VS2017 多线程串口通讯,可供MFC调用

    本项目表明,提供的组件或库可以被MFC应用程序调用,这意味着你可以在MFC项目中无缝集成多线程串口通讯功能,享受QT的便利性。 压缩包中的文件可能包括了QT5的库文件(dll和lib),这些是运行和编译QT应用程序所...

Global site tag (gtag.js) - Google Analytics