Sometimes you want to combine the powers of accelerated graphics and Qt Widgets. While OpenGL and Vulkan are great for rendering high-performance 2D and 3D scenes, the Qt Widgets module is far easier to use for creating user interfaces. Qt offers a few ways to combine them into a single powerful interface. This can be useful if your application depends heavily on widgets (for example, the 3D view is only one of the views in your application and is controlled using a bunch of other widgets surrounding the main view).
The first way is the QWidget::createWindowContainer() function. It takes an arbitrary QWindow and creates a QWidget that keeps the window within its bounds. That widget can be put into another widget and can be managed by a layout. While the window appears to be embedded into another window, it still remains a native window...