Qml contents doesn't appear under Windows
-
@J-Hilk
I just tried with :
--qmldir c:\Users<myUserName>\Documents\QtCreatorScrollProject, and I got the same results : QML contents still don't appear.
Just for the reference : here is the full project :
https://github.com/szigetics/QtCreatorScrollProject
( This is actually exactly what QtCreator gives you when you create a new project. ) -
I wonder if this is a case of needing "the common hack" of passing all of the Qt framework
qml
as theqmldir
.My build script (yes, I run bash on windows) does it like so:
windeployqt "${FLAVOR}" --qmldir "${WINALLQML}" app.exe
Where WINALLQML is something like
C:/my_third_party_sources/Qt_desktop/5.15.0/msvc2019_64/qml
-
You'll really want to see what the STDOUT/STDERR (console output) is printing when you launch the
exe
.There should definitely be a warning or an error printed that would clarify what exactly is going wrong.
I don't often work on windows, so my knowledge of how exactly to see all the output is "spotty", but if you aren't seeing any output then I think you need to add
CONFIG+=CONSOLE
, as in...qmake.exe CONFIG+=CONSOLE path/to/project
-
@KH-219Design
Thank you for your reply.I have added
--qmldir "${WINALLQML}"
to the windeployqt call, so the whole call looks like this :
C:/Qt/5.12.2/msvc2017_64/bin/windeployqt.exe QtCreatorScrollProject.exe --release --qmldir c:\\Users\\<myUserName>\\Documents\\QtCreatorScrollProject --qmldir c:\\Qt\\5.12.2\\msvc2017_64\\qml
but I still got the same result (empty window - QML contents doesn't appear).
-
@just_a_developer said in Qml contents doesn't appear under Windows:
to the windeployqt call, so the whole call looks like this :
C:/Qt/5.12.2/msvc2017_64/bin/windeployqt.exe QtCreatorScrollProject.exe --release --qmldir c:\Users\<myUserName>\Documents\QtCreatorScrollProject --qmldir c:\Qt\5.12.2\msvc2017_64\qmlbut I still got the same result (empty window - QML contents doesn't appear).
Why do you have 2 time
--qmldir
in your command line? -
@KroMignon said in Qml contents doesn't appear under Windows:
Why do you have 2 time
--qmldir
in your command line?Originally I only had one
--qmldir
. I added the additional one as per @KH-219Design 's suggestion.
windeployqt
supports passing multiple--qmldir
s : here is the (beggining of the) output of theC:/Qt/5.12.2/msvc2017_64/bin/windeployqt.exe QtCreatorScrollProject.exe --release --qmldir c:\\Users\\<myUserName>\\Documents\\QtCreatorScrollProject --qmldir c:\\Qt\\5.12.2\\msvc2017_64\\qml
call :C:\Users\<myUserName>\Desktop\5\QtCreatorScrollProject.exe 64 bit, release executable [QML] Scanning c:\Users\<myUserName>\Documents\QtCreatorScrollProject: QML imports: 'QtQuick' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick.2 'QtQuick.Controls' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls.2 'QtQuick.Templates' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Templates.2 'QtQuick.Window' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Window.2 'QtQuick.Controls.Fusion' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls.2\Fusion 'QtQuick.Controls.Imagine' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls.2\Imagine 'QtGraphicalEffects' C:\Qt\5.12.2\msvc2017_64\qml\QtGraphicalEffects 'QtGraphicalEffects/private' C:\Qt\5.12.2\msvc2017_64\qml\QtGraphicalEffects\private 'QtQuick.Controls.Material' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls.2\Material 'QtQuick.Controls.Universal' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls.2\Universal Scanning c:\Qt\5.12.2\msvc2017_64\qml: QML imports: 'QtQuick' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick.2 'QtQuick.Controls' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls.2 'QtQuick.Templates' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Templates.2 'QtQuick.Window' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Window.2 'QtQuick.Controls.Fusion' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls.2\Fusion 'QtQuick.Controls.Imagine' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls.2\Imagine 'QtGraphicalEffects' C:\Qt\5.12.2\msvc2017_64\qml\QtGraphicalEffects 'QtGraphicalEffects/private' C:\Qt\5.12.2\msvc2017_64\qml\QtGraphicalEffects\private 'QtQuick.Controls.Material' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls.2\Material 'QtQuick.Controls.Universal' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls.2\Universal 'Qt.labs.calendar' C:\Qt\5.12.2\msvc2017_64\qml\Qt\labs\calendar 'QtMultimedia' C:\Qt\5.12.2\msvc2017_64\qml\QtMultimedia 'QtQuick.Controls' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls 'QtQuick.Layouts' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Layouts 'QtQuick.Controls.Private' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls\Private 'QtQuick.Controls.Styles' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Controls\Styles 'QtQml.Models' C:\Qt\5.12.2\msvc2017_64\qml\QtQml\Models.2 'QtQuick.Extras.Private' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Extras\Private 'QtQuick.Extras' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Extras 'QtQuick.Dialogs' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Dialogs 'Qt.labs.folderlistmodel' C:\Qt\5.12.2\msvc2017_64\qml\Qt\labs\folderlistmodel 'Qt.labs.settings' C:\Qt\5.12.2\msvc2017_64\qml\Qt\labs\settings 'QtQuick.Dialogs.Private' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\Dialogs\Private 'QtQuick.PrivateWidgets' C:\Qt\5.12.2\msvc2017_64\qml\QtQuick\PrivateWidgets 'QtTest' C:\Qt\5.12.2\msvc2017_64\qml\QtTest 'QtWinExtras' C:\Qt\5.12.2\msvc2017_64\qml\QtWinExtras
-
-
@J-Hilk said in Qml contents doesn't appear under Windows:
Usage: windeployqt [options] [files]
options before the file!
I tried :
C:/Qt/5.12.2/msvc2017_64/bin/windeployqt.exe --release --qmldir c:\\Users\\\<myUserName>\\Documents\\QtCreatorScrollProject QtCreatorScrollProject.exe
but I still got the same result (empty window - QML contents doesn't appear).
(Side note : the directory layout for the output is the same for
windeployqt [options] [files]
andwindeployqt [files] [options]
) -
@just_a_developer said in Qml contents doesn't appear under Windows:
the directory layout for the output is the same
can you share a screenshot from that?
-
@J-Hilk said in Qml contents doesn't appear under Windows:
@just_a_developer said in Qml contents doesn't appear under Windows:
the directory layout for the output is the same
can you share a screenshot from that?
Sure. Here it is :
tree /f Folder PATH listing for volume <masked> Volume serial number is <masked> C:. │ D3Dcompiler_47.dll │ libEGL.dll │ libGLESV2.dll │ opengl32sw.dll │ Qt5Core.dll │ Qt5Gui.dll │ Qt5Network.dll │ Qt5Qml.dll │ Qt5Quick.dll │ Qt5QuickControls2.dll │ Qt5QuickTemplates2.dll │ Qt5Svg.dll │ Qt5Widgets.dll │ QtCreatorScrollProject.exe │ ├───bearer │ qgenericbearer.dll │ ├───iconengines │ qsvgicon.dll │ ├───imageformats │ qgif.dll │ qicns.dll │ qico.dll │ qjpeg.dll │ qsvg.dll │ qtga.dll │ qtiff.dll │ qwbmp.dll │ qwebp.dll │ ├───platforminputcontexts │ qtvirtualkeyboardplugin.dll │ ├───platforms │ qwindows.dll │ ├───qmltooling │ qmldbg_debugger.dll │ qmldbg_inspector.dll │ qmldbg_local.dll │ qmldbg_messages.dll │ qmldbg_native.dll │ qmldbg_nativedebugger.dll │ qmldbg_preview.dll │ qmldbg_profiler.dll │ qmldbg_quickprofiler.dll │ qmldbg_server.dll │ qmldbg_tcp.dll │ ├───QtGraphicalEffects │ │ Blend.qml │ │ BrightnessContrast.qml │ │ Colorize.qml │ │ ColorOverlay.qml │ │ ConicalGradient.qml │ │ Desaturate.qml │ │ DirectionalBlur.qml │ │ Displace.qml │ │ DropShadow.qml │ │ FastBlur.qml │ │ GammaAdjust.qml │ │ GaussianBlur.qml │ │ Glow.qml │ │ HueSaturation.qml │ │ InnerShadow.qml │ │ LevelAdjust.qml │ │ LinearGradient.qml │ │ MaskedBlur.qml │ │ OpacityMask.qml │ │ plugins.qmltypes │ │ qmldir │ │ qtgraphicaleffectsplugin.dll │ │ RadialBlur.qml │ │ RadialGradient.qml │ │ RectangularGlow.qml │ │ RecursiveBlur.qml │ │ ThresholdMask.qml │ │ ZoomBlur.qml │ │ │ └───private │ DropShadowBase.qml │ DropShadowBase.qmlc │ FastGlow.qml │ FastGlow.qmlc │ FastInnerShadow.qml │ FastInnerShadow.qmlc │ FastMaskedBlur.qml │ FastMaskedBlur.qmlc │ GaussianDirectionalBlur.qml │ GaussianDirectionalBlur.qmlc │ GaussianGlow.qml │ GaussianGlow.qmlc │ GaussianInnerShadow.qml │ GaussianInnerShadow.qmlc │ GaussianMaskedBlur.qml │ GaussianMaskedBlur.qmlc │ qmldir │ qtgraphicaleffectsprivate.dll │ ├───QtQuick │ ├───Controls.2 │ │ │ AbstractButton.qml │ │ │ Action.qml │ │ │ ActionGroup.qml │ │ │ ApplicationWindow.qml │ │ │ BusyIndicator.qml │ │ │ Button.qml │ │ │ ButtonGroup.qml │ │ │ CheckBox.qml │ │ │ CheckDelegate.qml │ │ │ ComboBox.qml │ │ │ Container.qml │ │ │ Control.qml │ │ │ DelayButton.qml │ │ │ Dial.qml │ │ │ Dialog.qml │ │ │ DialogButtonBox.qml │ │ │ Drawer.qml │ │ │ Frame.qml │ │ │ GroupBox.qml │ │ │ ItemDelegate.qml │ │ │ Label.qml │ │ │ Menu.qml │ │ │ MenuBar.qml │ │ │ MenuBarItem.qml │ │ │ MenuItem.qml │ │ │ MenuSeparator.qml │ │ │ Page.qml │ │ │ PageIndicator.qml │ │ │ Pane.qml │ │ │ plugins.qmltypes │ │ │ Popup.qml │ │ │ ProgressBar.qml │ │ │ qmldir │ │ │ qtquickcontrols2plugin.dll │ │ │ RadioButton.qml │ │ │ RadioDelegate.qml │ │ │ RangeSlider.qml │ │ │ RoundButton.qml │ │ │ ScrollBar.qml │ │ │ ScrollIndicator.qml │ │ │ ScrollView.qml │ │ │ Slider.qml │ │ │ SpinBox.qml │ │ │ StackView.qml │ │ │ SwipeDelegate.qml │ │ │ SwipeView.qml │ │ │ Switch.qml │ │ │ SwitchDelegate.qml │ │ │ TabBar.qml │ │ │ TabButton.qml │ │ │ TextArea.qml │ │ │ TextField.qml │ │ │ ToolBar.qml │ │ │ ToolButton.qml │ │ │ ToolSeparator.qml │ │ │ ToolTip.qml │ │ │ Tumbler.qml │ │ │ │ │ ├───Fusion │ │ │ ApplicationWindow.qml │ │ │ BusyIndicator.qml │ │ │ Button.qml │ │ │ ButtonPanel.qml │ │ │ CheckBox.qml │ │ │ CheckDelegate.qml │ │ │ CheckIndicator.qml │ │ │ ComboBox.qml │ │ │ DelayButton.qml │ │ │ Dial.qml │ │ │ Dialog.qml │ │ │ DialogButtonBox.qml │ │ │ Drawer.qml │ │ │ Frame.qml │ │ │ GroupBox.qml │ │ │ ItemDelegate.qml │ │ │ Label.qml │ │ │ Menu.qml │ │ │ MenuBar.qml │ │ │ MenuBarItem.qml │ │ │ MenuItem.qml │ │ │ MenuSeparator.qml │ │ │ Page.qml │ │ │ PageIndicator.qml │ │ │ Pane.qml │ │ │ plugins.qmltypes │ │ │ Popup.qml │ │ │ ProgressBar.qml │ │ │ qmldir │ │ │ qtquickcontrols2fusionstyleplugin.dll │ │ │ RadioButton.qml │ │ │ RadioDelegate.qml │ │ │ RadioIndicator.qml │ │ │ RangeSlider.qml │ │ │ RoundButton.qml │ │ │ ScrollBar.qml │ │ │ ScrollIndicator.qml │ │ │ Slider.qml │ │ │ SliderGroove.qml │ │ │ SliderHandle.qml │ │ │ SpinBox.qml │ │ │ SwipeDelegate.qml │ │ │ Switch.qml │ │ │ SwitchDelegate.qml │ │ │ SwitchIndicator.qml │ │ │ TabBar.qml │ │ │ TabButton.qml │ │ │ TextArea.qml │ │ │ TextField.qml │ │ │ ToolBar.qml │ │ │ ToolButton.qml │ │ │ ToolSeparator.qml │ │ │ ToolTip.qml │ │ │ Tumbler.qml │ │ │ │ │ ├───Imagine │ │ │ ApplicationWindow.qml │ │ │ BusyIndicator.qml │ │ │ Button.qml │ │ │ CheckBox.qml │ │ │ CheckDelegate.qml │ │ │ ComboBox.qml │ │ │ DelayButton.qml │ │ │ Dial.qml │ │ │ Dialog.qml │ │ │ DialogButtonBox.qml │ │ │ Drawer.qml │ │ │ Frame.qml │ │ │ GroupBox.qml │ │ │ ItemDelegate.qml │ │ │ Label.qml │ │ │ Menu.qml │ │ │ MenuItem.qml │ │ │ MenuSeparator.qml │ │ │ Page.qml │ │ │ PageIndicator.qml │ │ │ Pane.qml │ │ │ plugins.qmltypes │ │ │ Popup.qml │ │ │ ProgressBar.qml │ │ │ qmldir │ │ │ qtquickcontrols2imaginestyleplugin.dll │ │ │ RadioButton.qml │ │ │ RadioDelegate.qml │ │ │ RangeSlider.qml │ │ │ RoundButton.qml │ │ │ ScrollBar.qml │ │ │ ScrollIndicator.qml │ │ │ Slider.qml │ │ │ SpinBox.qml │ │ │ StackView.qml │ │ │ SwipeDelegate.qml │ │ │ SwipeView.qml │ │ │ Switch.qml │ │ │ SwitchDelegate.qml │ │ │ TabBar.qml │ │ │ TabButton.qml │ │ │ TextArea.qml │ │ │ TextField.qml │ │ │ ToolBar.qml │ │ │ ToolButton.qml │ │ │ ToolSeparator.qml │ │ │ ToolTip.qml │ │ │ Tumbler.qml │ │ │ │ │ ├───Material │ │ │ ApplicationWindow.qml │ │ │ BoxShadow.qml │ │ │ BusyIndicator.qml │ │ │ Button.qml │ │ │ CheckBox.qml │ │ │ CheckDelegate.qml │ │ │ CheckIndicator.qml │ │ │ ComboBox.qml │ │ │ CursorDelegate.qml │ │ │ DelayButton.qml │ │ │ Dial.qml │ │ │ Dialog.qml │ │ │ DialogButtonBox.qml │ │ │ Drawer.qml │ │ │ ElevationEffect.qml │ │ │ Frame.qml │ │ │ GroupBox.qml │ │ │ ItemDelegate.qml │ │ │ Label.qml │ │ │ Menu.qml │ │ │ MenuBar.qml │ │ │ MenuBarItem.qml │ │ │ MenuItem.qml │ │ │ MenuSeparator.qml │ │ │ Page.qml │ │ │ PageIndicator.qml │ │ │ Pane.qml │ │ │ plugins.qmltypes │ │ │ Popup.qml │ │ │ ProgressBar.qml │ │ │ qmldir │ │ │ qtquickcontrols2materialstyleplugin.dll │ │ │ RadioButton.qml │ │ │ RadioDelegate.qml │ │ │ RadioIndicator.qml │ │ │ RangeSlider.qml │ │ │ RectangularGlow.qml │ │ │ RoundButton.qml │ │ │ ScrollBar.qml │ │ │ ScrollIndicator.qml │ │ │ Slider.qml │ │ │ SliderHandle.qml │ │ │ SpinBox.qml │ │ │ StackView.qml │ │ │ SwipeDelegate.qml │ │ │ SwipeView.qml │ │ │ Switch.qml │ │ │ SwitchDelegate.qml │ │ │ SwitchIndicator.qml │ │ │ TabBar.qml │ │ │ TabButton.qml │ │ │ TextArea.qml │ │ │ TextField.qml │ │ │ ToolBar.qml │ │ │ ToolButton.qml │ │ │ ToolSeparator.qml │ │ │ ToolTip.qml │ │ │ Tumbler.qml │ │ │ │ │ └───Universal │ │ ApplicationWindow.qml │ │ BusyIndicator.qml │ │ Button.qml │ │ CheckBox.qml │ │ CheckDelegate.qml │ │ CheckIndicator.qml │ │ ComboBox.qml │ │ DelayButton.qml │ │ Dial.qml │ │ Dialog.qml │ │ DialogButtonBox.qml │ │ Drawer.qml │ │ Frame.qml │ │ GroupBox.qml │ │ ItemDelegate.qml │ │ Label.qml │ │ Menu.qml │ │ MenuBar.qml │ │ MenuBarItem.qml │ │ MenuItem.qml │ │ MenuSeparator.qml │ │ Page.qml │ │ PageIndicator.qml │ │ Pane.qml │ │ plugins.qmltypes │ │ Popup.qml │ │ ProgressBar.qml │ │ qmldir │ │ qtquickcontrols2universalstyleplugin.dll │ │ RadioButton.qml │ │ RadioDelegate.qml │ │ RadioIndicator.qml │ │ RangeSlider.qml │ │ RoundButton.qml │ │ ScrollBar.qml │ │ ScrollIndicator.qml │ │ Slider.qml │ │ SpinBox.qml │ │ StackView.qml │ │ SwipeDelegate.qml │ │ Switch.qml │ │ SwitchDelegate.qml │ │ SwitchIndicator.qml │ │ TabBar.qml │ │ TabButton.qml │ │ TextArea.qml │ │ TextField.qml │ │ ToolBar.qml │ │ ToolButton.qml │ │ ToolSeparator.qml │ │ ToolTip.qml │ │ Tumbler.qml │ │ │ ├───Templates.2 │ │ plugins.qmltypes │ │ qmldir │ │ qtquicktemplates2plugin.dll │ │ │ └───Window.2 │ plugins.qmltypes │ qmldir │ windowplugin.dll │ ├───QtQuick.2 │ plugins.qmltypes │ qmldir │ qtquick2plugin.dll │ ├───scenegraph │ qsgd3d12backend.dll │ ├───styles │ qwindowsvistastyle.dll │ ├───translations │ qt_ar.qm │ qt_bg.qm │ qt_ca.qm │ qt_cs.qm │ qt_da.qm │ qt_de.qm │ qt_en.qm │ qt_es.qm │ qt_fi.qm │ qt_fr.qm │ qt_gd.qm │ qt_he.qm │ qt_hu.qm │ qt_it.qm │ qt_ja.qm │ qt_ko.qm │ qt_lv.qm │ qt_pl.qm │ qt_ru.qm │ qt_sk.qm │ qt_uk.qm │ └───virtualkeyboard qtvirtualkeyboard_hangul.dll qtvirtualkeyboard_openwnn.dll qtvirtualkeyboard_pinyin.dll qtvirtualkeyboard_tcime.dll qtvirtualkeyboard_thai.dll
-
@just_a_developer Sorry tweaking the arguments didn't help.
What about watching what Qt is printing when you launch the exe?
I would still expect there is a warning or an error printed that would clarify what exactly is going wrong.
-
A bit more info :
Here is the output of the app when I run it withQML_IMPORT_TRACE=1
:> set QML_IMPORT_TRACE=1 > QtCreatorScrollProject.exe warning: Environment variable QT_LOGGING_TO_CONSOLE is deprecated, use QT_ASSUME_STDERR_HAS_CONSOLE and/or QT_FORCE_STDERR_LOGGING instead. QQmlImportDatabase::addImportPath: "C:/Users/User/Downloads/6/6/qml" QQmlImportDatabase::addImportPath: "qrc:/qt-project.org/imports" QQmlImportDatabase::addImportPath: "C:/Users/User/Downloads/6/6" QQmlImports(qrc:/main.qml)::addLibraryImport: "QtQuick" 2.12 as "" QQmlImports(qrc:/main.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick.2/qmldir" QQmlImportDatabase::registerPluginTypes: "QtQuick" from "C:/Users/User/Downloads/6/6/QtQuick.2" QQmlImports(qrc:/main.qml)::addLibraryImport: "QtQuick.Controls" 2.5 as "" QQmlImports(qrc:/main.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick/Controls.2/qmldir" QQmlImportDatabase::registerPluginTypes: "QtQuick.Controls" from "C:/Users/User/Downloads/6/6/QtQuick/Controls.2" QQmlImports(qrc:/main.qml)::addLibraryImport: "QtQuick" 2.0 as "QmlInternals" QQmlImports(qrc:/main.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick.2/qmldir" QQmlImports(qrc:/main.qml)::resolveType: "ScrollView" => "" QUrl("qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml") TYPE/URL QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::addLibraryImport: "QtQuick" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick.2/qmldir" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::addLibraryImport: "QtQuick.Controls" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick/Controls.2/qmldir" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::addLibraryImport: "QtQuick.Controls.impl" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::addLibraryImport: "QtQuick.Templates" 2.12 as "T" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick/Templates.2/qmldir" QQmlImportDatabase::registerPluginTypes: "QtQuick.Templates" from "C:/Users/User/Downloads/6/6/QtQuick/Templates.2" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::resolveType: "ScrollBar" => "" QUrl("qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml") TYPE/URL QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::addLibraryImport: "QtQuick" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick.2/qmldir" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::addLibraryImport: "QtQuick.Controls" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick/Controls.2/qmldir" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::addLibraryImport: "QtQuick.Controls.impl" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::addLibraryImport: "QtQuick.Templates" 2.12 as "T" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick/Templates.2/qmldir" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::resolveType: "Transition" => "QQuickTransition" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::resolveType: "Rectangle" => "QQuickRectangle" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::resolveType: "NumberAnimation" => "QQuickNumberAnimation" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::resolveType: "T.ScrollBar" => "QQuickScrollBar" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::resolveType: "SequentialAnimation" => "QQuickSequentialAnimation" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::resolveType: "PauseAnimation" => "QQuickPauseAnimation" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::resolveType: "State" => "QQuickState" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::resolveType: "PropertyChanges" => "QQuickPropertyChanges" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml)::addImplicitImport QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::resolveType: "T.ScrollView" => "QQuickScrollView" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::addImplicitImport QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::resolveType: "ScrollBar" => "" QUrl("qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml") TYPE/URL QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollView.qml)::resolveType: "ScrollBar" => "" QUrl("qrc:/qt-project.org/imports/QtQuick/Controls.2/ScrollBar.qml") TYPE/URL QQmlImports(qrc:/main.qml)::resolveType: "ListView" => "QQuickListView" TYPE QQmlImports(qrc:/main.qml)::resolveType: "ApplicationWindow" => "" QUrl("qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml") TYPE/URL QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::addLibraryImport: "QtQuick" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick.2/qmldir" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::addLibraryImport: "QtQuick.Window" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick/Window.2/qmldir" QQmlImportDatabase::registerPluginTypes: "QtQuick.Window" from "C:/Users/User/Downloads/6/6/QtQuick/Window.2" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::addLibraryImport: "QtQuick.Controls" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick/Controls.2/qmldir" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::addLibraryImport: "QtQuick.Controls.impl" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::addLibraryImport: "QtQuick.Templates" 2.12 as "T" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick/Templates.2/qmldir" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::resolveType: "Rectangle" => "QQuickRectangle" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::resolveType: "T.ApplicationWindow" => "QQuickApplicationWindow" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ApplicationWindow.qml)::addImplicitImport QQmlImports(qrc:/main.qml)::resolveType: "ItemDelegate" => "" QUrl("qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml") TYPE/URL QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml)::addLibraryImport: "QtQuick" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick.2/qmldir" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml)::addLibraryImport: "QtQuick.Controls" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick/Controls.2/qmldir" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml)::addLibraryImport: "QtQuick.Controls.impl" 2.12 as "" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml)::addLibraryImport: "QtQuick.Templates" 2.12 as "T" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml)::importExtension: loaded "C:/Users/User/Downloads/6/6/QtQuick/Templates.2/qmldir" QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml)::resolveType: "IconLabel" => "QQuickIconLabel" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml)::resolveType: "T.ItemDelegate" => "QQuickItemDelegate" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml)::resolveType: "Rectangle" => "QQuickRectangle" TYPE QQmlImports(qrc:/qt-project.org/imports/QtQuick/Controls.2/ItemDelegate.qml)::addImplicitImport QQmlImports(qrc:/main.qml)::resolveType: "QmlInternals.Component" => "QQmlComponent" TYPE QQmlImports(qrc:/main.qml)::addImplicitImport
Also : "Accessibility Insights for Windows" app shows that there is something there, it is just not visible :
-
@just_a_developer said in Qml contents doesn't appear under Windows:
"Accessibility Insights for Windows"
Wow! Bravo to "Accessibility Insights for Windows" . That's an amazing trick.
I noticed that earlier you mentioned that the machine where the problem occurs is a VM. I wonder if there is just an OpenGL problem/glitch due to the virtualization. Are there VM options/settings you can play with, like assigning your GPU, or toggling through various graphics acceleration options?
-
@KH-219Design said in Qml contents doesn't appear under Windows:
@just_a_developer said in Qml contents doesn't appear under Windows:
"Accessibility Insights for Windows"
Wow! Bravo to "Accessibility Insights for Windows" . That's an amazing trick.
I noticed that earlier you mentioned that the machine where the problem occurs is a VM. I wonder if there is just an OpenGL problem/glitch due to the virtualization. Are there VM options/settings you can play with, like assigning your GPU, or toggling through various graphics acceleration options?
"Are there VM options/settings you can play with, like assigning your GPU, or toggling through various graphics acceleration options?"
I am not sure if there is anything that I could do... It is a machine in vSphere and I don't really see any options that I could change which could be relevant...But : here is a bit more info :
- the app works well under a Windows7 VM (everything appears, including QML contents)
- the app doesn't show the QML contents under Windows8 and Windows10 VMs (empty window - QML contents doesn't appear)
Here is the context of the Windows7 VM (as shown by OpenGL Extension Viewer), where the QML contents does appear :
Here is the context of the Windows10 VM (as shown by OpenGL Extension Viewer), where the QML contents doesn't appear :
-
OK : I got the fix : it is a rendering issue.
When I force rendering via ANGLE, it works : Options for forcing rendering via ANGLE :
1.: setting theQT_OPENGL
environment variable toangle
. (I only tested this solution, and it works well.)
2.: compile Qt withconfigure ... -angle
.
3.: callQCoreApplication::setAttribute(Qt::AA_UseOpenGLES);
before creating theQApplication
object .There is still an interesting thing : based on Qt's documentation, Qt libraries are compiled with
-opengl dynamic
which means that Qt should fallback to using the ANGLE renderer by itself (without me having to forcefully ask it to do that).
Ref.: https://doc.qt.io/qt-5/windows-requirements.html#graphics-drivers
Ref2.: https://doc.qt.io/qt-5/configure-options.html#opengl-options-for-windowsSo it seems like that this fallback mechanism is broken.
( A bit more info about the different renderers : https://wiki.qt.io/Qt_5_on_Windows_ANGLE_and_OpenGL )