Qt那些事0.0.13
阿新 • • 發佈:2018-12-01
關於QQmlApplicationEngine和QQuickView真是不知道該說些什麼.搜尋到一個兄臺在一個月的之間的大徹大悟,部落格地址 :
哦,我也不知道該說些什麼了,反正我的程式碼裡還有幾個ReferenceError: OOOO is not defined等待我處理.
把標點符號全部都改成英文的,為了就是寫註釋和程式碼方便一些.但是寫部落格的話感覺特別不舒服呢.
/************************2018年11月30日 更新**********************************/
調換了一下setContextProperty和setSource的順序,先將物件設定到context中,然後再進一步設定qml檔案,這樣就 不再報referenceError錯誤錯.
但是有個更詭異的問題出現,設定qml檔案設定全屏,通過先QQuickView::setSizeMode(),再更新qml中的width,height為desktop().width()等,最後讓viewtoObjectQQuickView::setPosition(0,0),第一眼沒有問題,但是通過切換視窗,再切換回來,會發生視窗透明.
查到部落格,提出問題以及解決方法,測試後果然是這個原因.
現象 QML程式在啟動時,有一瞬間明顯的黑屏。
觸發條件 1.全屏顯示;
2.程式的flags包含Qt.FramelessWindowHint。
根本原因 不詳
解決方法 設定程式的顯示大小,不要剛好等於螢幕大小。
import QtQuick 2.6 import QtQuick.Window 2.2 Window { visible : true //寬或高加減一個不等於0的數,即可去除。 width: Screen.width + 1; height: Screen.height; flags: Qt.FramelessWindowHint Text { id : text; text : qsTr("text"); width : parent.width; height : parent.height; } } /* 作者:chase_hung 來源:CSDN 原文:https://blog.csdn.net/chase_hung/article/details/80863531 版權宣告:本文為博主原創文章,轉載請附上博文連結! */