QWidget中嵌入win32 window(使用QWindow和QWidget::createWindowContainer)


主要用到QWindow::fromWinId和QWidget::createWindowContainer这两个函数

QWindow::fromWinId用来创建一个win32窗口的代理 
QWidget::createWindowContainer用来把窗口封装为一个QWidget控件

示例代码

    HWND hwnd = ::FindWindow(L"CEFWebkitBrowserWnd", NULL); QWindow* native_wnd = QWindow::fromWinId((WId)hwnd); QWidget* native_wdgt = QWidget::createWindowContainer(native_wnd); centralWidget ->addSubWindow(native_wdgt); native_wdgt->setMinimumSize(600,400);

图示

参考链接

http://stackoverflow.com/questions/28786172/qt5-qwidgetcreate-with-win32-hwnd-embedding-not-longer-working-after-port-fr

 

http://blog.csdn.net/x356982611/article/details/52512533


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM