2014-01-24 72 views
8

有人可以評論一個事實:對於QML,任何命令JavaScript代碼不會執行,除非它是extra component的一部分。我面臨着這樣那樣的問題,當我有下面的代碼我QML:QML - 不支持命令代碼

function qmlSlot(text){ 
    page.data=text 
    if(page.data==="received") 
     page.color="black"; 
} 

由於Qt設計得到凍結,並顯示以下警告:

勢在必行代碼是不是在Qt的支持快速設計師

,我讀了建設qmlpuppet安裝在渲染組件的可執行文件Qt構建它的目錄。 Qt Quick Designer如果qmlpuppet位於/ bin目錄中,則檢查當前項目的Qt。如果是,則需要Qt版本提供的qmlpuppet,而不是Qt Creator自身提供的版本。在我來說,我沒有使用Qt的靜態二進制安裝,而是內置的Qt從源頭上,從而產生qmlpuppet可執行文件,並已位於:

/usr/local/Qt-5.2.1/qtcreator/bin 
-rwxr-xr-x 1 qml2puppet 
-rwxr-xr-x 1 qmlpuppet 

因此,可執行qmlpuppet放置有望哪裏被發現並且這個煩人的消息仍然繼續。

我在此刻採取的解決方法是在我想使用Qt Designer編輯前端QML時註釋掉任何所謂的「命令代碼」。然後在取出這些註釋後再次激活「命令碼」。但是這非常煩人,儘管代碼編譯和工作正如我預期的那樣。

那麼,我應該擔心這個警告嗎?無論如何,解決這個問題有一些意義,因爲它凍結了Qt設計器?

+2

看看此http:/ /qt-project.org/forums/viewthread/25270 – Apokal

+0

@Apokal - 謝謝!我已經添加了一些額外的信息和鏈接。 –

回答