at_takuya.sasaki
2015年4月12日 20時58分
Armadillo-840+Qt(QML)でデモを作成してる中で、コマンド引数のようにQMLに対して何らかのパラメータを渡せないかを検討してみました。
C++で作成していれば従来のようにコマンド引数でパラメータを受け取ることはできると思いますが、QMLではJavaScriptのファイルを共有できるので、ファイルにパラメータを書き込み、それをQML側で読み込む方法を使ってみました。
1. パラメータファイルを作成
QMLと同じフォルダに、任意の名前 ( paramater.js ) でファイルを作ります
.pragma library var text = "Hello world"
2. QML側で読み込み
ポイントは import で jsファイルを定義し、あとは変数にアクセスするだけです。 なお、as の後に定義する Param の部分ですが、先頭が大文字である必要があるようです。
import QtQuick 2.0 import "paramater.js" as Param Rectangle { width: 800 height: 480 Text{ text: Param.text } }
以上