首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在.NET应用程序中集成Qt小部件

在.NET应用程序中集成Qt小部件
EN

Stack Overflow用户
提问于 2011-01-18 16:11:12
回答 2查看 2.3K关注 0票数 5

我有一个可以工作的Qt小部件,我想在.NET应用程序中显示它。应用程序使用的是WPF,我想将该小部件嵌入到UI中的某个位置。

在WPF应用程序中嵌入Qt小部件的推荐方式是什么?我应该使用C++/CLI并将HWND传递给WPF,还是只使用ActiveQt?我担心Qt事件机制,因为没有人会调用QApplication::exec()

EN

回答 2

Stack Overflow用户

发布于 2011-12-21 16:32:41

您需要做的是使用QAxServer将您的小部件转换为COM对象:

http://developer.qt.nokia.com/doc/qt-4.8/activeqt-server.html

这会将您的对象转换为COM对象。然后,您应该能够这样引用它。然而,这确实不是跨3种技术(Qt,COM,WPF)工作的正常做法。

为了来回通信,您需要设置绑定:

http://developer.qt.nokia.com/doc/qt-4.8/qaxbindable.html

票数 1
EN

Stack Overflow用户

发布于 2012-10-09 21:50:29

ActiveQt是否仍然受到积极支持?!只是想知道..。

在我的一个项目中,我遇到了类似的问题。我通过将Qt初始化(QApplication和::exec())包装在一个函数中解决了这个问题,我通过PInvoke调用该函数,然后使用QWidgets () (QWidget::getDC()返回本机句柄)。

这不是最干净的方式,但结合使用Qt、COM和WPF也不是最干净的方式^^

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4721786

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档