runtimeqml
runtimeqml copied to clipboard
TypeError: Cannot read property 'right' of undefined
With Qt 5.13, type errors can be debugged on reload, like below. Doesn't impact the reload other than annoying debug messages.
It can happen with every Window that is reloaded (i.e. closed, destroyed and reloaded). These errors are triggered when the window is destroyed (calling deleteLater()), probably due to some bug in Qt 5.13 (needs investigation).
No workaround found yet. Not destroying the window is not an option, otherwise it will continue to run in the background (Javascript and bindings will not stop).
QtQuick/Controls/Private/ScrollViewHelper.qml:110: TypeError: Cannot read property 'right' of undefined
QtQuick/Controls/Private/ScrollViewHelper.qml:111: TypeError: Cannot read property 'bottom' of undefined
QtQuick/Controls/Private/ScrollViewHelper.qml:132: TypeError: Cannot read property 'bottom' of undefined
QtQuick/Controls/Private/ScrollViewHelper.qml:133: TypeError: Cannot read property 'left' of undefined
QtQuick/Controls/Private/ScrollViewHelper.qml:190: TypeError: Cannot read property 'right' of undefined
QtQuick/Controls/Private/ScrollViewHelper.qml:191: TypeError: Cannot read property 'top' of undefined
QtQuick/Controls/Private/BasicTableView.qml:777: TypeError: Cannot read property 'top' of undefined
QtQuick/Controls/Private/BasicTableView.qml:778: TypeError: Cannot read property 'right' of undefined
QtQuick/Controls/Private/BasicTableView.qml:734: TypeError: Cannot read property 'height' of null
QtQuick/Controls/Private/BasicTableView.qml:734: TypeError: Type error
I have the same problem 😥
With which Qt version? And when using Qt Quick Controls 1 items or not?
Issue still present with Qt 5.15.2. I think it only happens with QtQuick 1 controls.
@Wanderson-Magalhaes Last commit may fix the issue for you, if you can test. Worked for me ;) https://github.com/GIPdA/runtimeqml/commit/9c9f6a28ebdfa6e59513dcbc401a8dc476481be9
@Wanderson-Magalhaes Probably you are using SplashScreen and closing that window and creating a new component (mainWindow) like: Qt.createComponent("something.qml") Solution can be if you use a loader qml file, first load your splashscreen, and when it is closing use the Loader to open a new Window from loader.source: "main.qml" This link will be useful: https://forum.qt.io/topic/81769/my-app-is-crashing-probably-not-due-to-loader/2 I faced the same problem, only this could help me at the moment.