Qt Quick

QML パフォーマンスモニタ

Published Monday April 11th, 2011 | Leave a comment
Posted in Qt Creator, リサーチプロジェクト | Tags: ,

この記事は Qt Blog の “Qml Perfomance Monitor” を翻訳したものです。 執筆: Christiaan Janssen 2011年4月7日 Qt Creator 2.2 がリリース予定となったので、新しいブランチで新しい実験的な機能の実装をはじめました。その最新のものが QML パフォーマンスモニタです。 新しい解析モードの一部であるこの小さなツールは、Qt Quick アプリケーションをプロファイルするためのものです。QML のコードを実行したときのプロパティバインディングやシグナル、描画処理をこのツールで検査できます。潜在的なボトルネック、特にバインディングの評価によるものを特定するには非常に有用なツールです。以下の短いビデオでその特徴を紹介します。 このビデオでは、Qt の samegame デモを Qt Creator のウィザードでインポートして作成した Qt Quick アプリケーションに対して QML パフォーマンスモニタを動かしています。 (訳注: Qt Creator に新しく追加される Analyze Mode で QML パフォーマンスモニタを動かして Qt Quick アプリケーションのパフォーマンスを解析する様子をデモしています。CPU の使用状況などの概要や、描画や要素の作成などの詳細がタイムラインで表示されています。まだ開発中の機能のため、詳細はリリースが近づいてからお知らせする予定です。) Brisbane の Troll 達が始めた小さなプロジェクトからこのツールは生まれました。まだこれは初期段階の実験的な機能であることに注意してください。多くの機能が未実装ですし、安定すらしていないかもしれません。このような場合の常套句ですが、各自の責任でお試しください。 デバイス上でもプロファイルが可能なことをお伝えしたいと思います。Qt Quick アプリケーションの起動時の引数に “-qmljsdebugger=port:33456” […]

Read More

Qt Quick 入門 第9回: Qt Quick デザイナの使い方

Published Thursday March 31st, 2011 | 2 Comments on Qt Quick 入門 第9回: Qt Quick デザイナの使い方
Posted in Qt Quick 入門 | Tags: , ,

Qt Creator 2.1がリリース されました。これまでもこの連載ではベータ版やリリース候補版を使ってきましたが、今回はいよいよ正式リリースとなった Qt Quick デザイナの使い方を説明します。 Qt Creator 2.1 の変更点 その前に、Qt Creator の 2.0 から 2.1 の変更点でこれまでの連載と関係する点を挙げておきます。 「QML アプリケーション」プロジェクトから「Qt Quick UI」プロジェクトへ名前を変更 「Qt Quick UI」プロジェクトのテンプレートとなる QML ファイルの内容の変更 C++ と QML を連携させて動作させるアプリケーションのテンプレートとなる「Qt Quick アプリケーション」プロジェクトが追加 QML ビューアのパスの指定は無くなり、プロジェクトで使用する Qt に含まれる QML ビューアを実行(このため、別途 Qt 自体のインストールが必須) このあたりでしょうか。これらの変更はリリース候補版の時点で行われていたので、気が付いていた方もいらっしゃるかと思います。これらはどれも複雑な変更ではありませんので、すぐになれると思います。より詳細な変更点に関しては リリースの記事 等を参考にしてください。 画面構成 それでは Qt Quick デザイナの画面構成から説明します。今回の説明は上記の変更点に含まれている新しいテンプレートの「Qt Quick UI」プロジェクトを使って行いますので、新しく「Qt Quick UI」プロジェクトを作成してください。作成された QML ファイルのコードは下記のものになっていると思います。 […]

Read More

Qt Quick 入門 第9回: Qt Quick デザイナの使い方

Published Thursday March 31st, 2011 | 2 Comments on Qt Quick 入門 第9回: Qt Quick デザイナの使い方
Posted in Qt Quick 入門 | Tags: , ,

Qt Creator 2.1がリリース されました。これまでもこの連載ではベータ版やリリース候補版を使ってきましたが、今回はいよいよ正式リリースとなった Qt Quick デザイナの使い方を説明します。 Qt Creator 2.1 の変更点 その前に、Qt Creator の 2.0 から 2.1 の変更点でこれまでの連載と関係する点を挙げておきます。 「QML アプリケーション」プロジェクトから「Qt Quick UI」プロジェクトへ名前を変更 「Qt Quick UI」プロジェクトのテンプレートとなる QML ファイルの内容の変更 C++ と QML を連携させて動作させるアプリケーションのテンプレートとなる「Qt Quick アプリケーション」プロジェクトが追加 QML ビューアのパスの指定は無くなり、プロジェクトで使用する Qt に含まれる QML ビューアを実行(このため、別途 Qt 自体のインストールが必須) このあたりでしょうか。これらの変更はリリース候補版の時点で行われていたので、気が付いていた方もいらっしゃるかと思います。これらはどれも複雑な変更ではありませんので、すぐになれると思います。より詳細な変更点に関しては リリースの記事 等を参考にしてください。 画面構成 それでは Qt Quick デザイナの画面構成から説明します。今回の説明は上記の変更点に含まれている新しいテンプレートの「Qt Quick UI」プロジェクトを使って行いますので、新しく「Qt Quick UI」プロジェクトを作成してください。作成された QML ファイルのコードは下記のものになっていると思います。 […]

Read More

デスクトップ用 QML Components?

Published Wednesday March 16th, 2011 | Leave a comment
Posted in Qt Quick | Tags: , ,

この記事は Qt Blog の ”QML Components for Desktop?” を翻訳したものです。 執筆: Jens Bache-Wiig 2011年3月10日 Qt の周囲が落ち着くまでの間、私は新しいリサーチプロジェクトのハックを楽しんでいます。そのプロジェクトの紹介として、まずはこのビデオを見ていただきたいと思います。

Read More

デスクトップ用 QML Components?

Published Wednesday March 16th, 2011 | Leave a comment
Posted in Qt Quick | Tags: , ,

この記事は Qt Blog の ”QML Components for Desktop?” を翻訳したものです。 執筆: Jens Bache-Wiig 2011年3月10日 Qt の周囲が落ち着くまでの間、私は新しいリサーチプロジェクトのハックを楽しんでいます。そのプロジェクトの紹介として、まずはこのビデオを見ていただきたいと思います。

Read More

デスクトップ用 QML Components?

Published Wednesday March 16th, 2011 | Leave a comment
Posted in Qt Quick | Tags: , ,

この記事は Qt Blog の ”QML Components for Desktop?” を翻訳したものです。 執筆: Jens Bache-Wiig 2011年3月10日 Qt の周囲が落ち着くまでの間、私は新しいリサーチプロジェクトのハックを楽しんでいます。そのプロジェクトの紹介として、まずはこのビデオを見ていただきたいと思います。

Read More

Qt Quick 入門 第8回: QML の描画処理

Published Thursday March 10th, 2011 | Leave a comment
Posted in Qt Quick 入門 | Tags: ,

今回の「Qt Quick 入門」では、QML の各要素で共通する描画関連の処理やプロパティについて説明していきます。前回の「レイアウト」と合わせて、QML のレイアウトと描画に関する基本をマスターしましょう。 表示の優先順位 今まで、QML の各要素を表示する優先順位については、特に触れてきませんでした。前回の「レイアウト」で説明したような各要素が重ならない場合には、どの要素から描画されても問題ありません。また、親子関係にある要素では、子要素が優先されて前面に表示されます。このあたりは一般的なルールだと思います。 それでは、親子関係にはない複数の要素が互いに重なっていた場合、そのどちらが優先して表示されるのでしょうか。その場合、ソース内で後から定義された要素が優先されて前面に表示されます。たとえば、次の二つのリストを実行してみてください。 // リストA import Qt 4.7 Rectangle { width: 200; height: 200 Rectangle { id: rect1 x: 25; y: 25 width: 100; height: 100 color: “red” } Rectangle { id: rect2 x: 75; y: 75 width: 100; height: 100 color: “green” } } // リストB import Qt […]

Read More

Qt Quick 入門 第8回: QML の描画処理

Published Thursday March 10th, 2011 | Leave a comment
Posted in Qt Quick 入門 | Tags: ,

今回の「Qt Quick 入門」では、QML の各要素で共通する描画関連の処理やプロパティについて説明していきます。前回の「レイアウト」と合わせて、QML のレイアウトと描画に関する基本をマスターしましょう。 表示の優先順位 今まで、QML の各要素を表示する優先順位については、特に触れてきませんでした。前回の「レイアウト」で説明したような各要素が重ならない場合には、どの要素から描画されても問題ありません。また、親子関係にある要素では、子要素が優先されて前面に表示されます。このあたりは一般的なルールだと思います。 それでは、親子関係にはない複数の要素が互いに重なっていた場合、そのどちらが優先して表示されるのでしょうか。その場合、ソース内で後から定義された要素が優先されて前面に表示されます。たとえば、次の二つのリストを実行してみてください。 // リストA import Qt 4.7 Rectangle { width: 200; height: 200 Rectangle { id: rect1 x: 25; y: 25 width: 100; height: 100 color: “red” } Rectangle { id: rect2 x: 75; y: 75 width: 100; height: 100 color: “green” } } // リストB import Qt […]

Read More

Qt Quick 入門 第8回: QML の描画処理

Published Thursday March 10th, 2011 | Leave a comment
Posted in Qt Quick 入門 | Tags: ,

今回の「Qt Quick 入門」では、QML の各要素で共通する描画関連の処理やプロパティについて説明していきます。前回の「レイアウト」と合わせて、QML のレイアウトと描画に関する基本をマスターしましょう。 表示の優先順位 今まで、QML の各要素を表示する優先順位については、特に触れてきませんでした。前回の「レイアウト」で説明したような各要素が重ならない場合には、どの要素から描画されても問題ありません。また、親子関係にある要素では、子要素が優先されて前面に表示されます。このあたりは一般的なルールだと思います。 それでは、親子関係にはない複数の要素が互いに重なっていた場合、そのどちらが優先して表示されるのでしょうか。その場合、ソース内で後から定義された要素が優先されて前面に表示されます。たとえば、次の二つのリストを実行してみてください。 // リストA import Qt 4.7 Rectangle { width: 200; height: 200 Rectangle { id: rect1 x: 25; y: 25 width: 100; height: 100 color: “red” } Rectangle { id: rect2 x: 75; y: 75 width: 100; height: 100 color: “green” } } // リストB import Qt […]

Read More

import QtQuick 1.1

Published Wednesday March 9th, 2011 | Leave a comment
Posted in Qt Quick | Tags:

この記事は Qt Blog の “import QtQtuick 1.1” を翻訳したものです。 執筆: aalpert 2011年2月25日 QML の動向を追ってらっしゃる方々はご存知だと思いますが、Qt 4.7.1 では Qt Quick のマイナーバージョンの変更を可能にするために、QML で import する Qt Quick のモジュールを “QtQuick 1.0” に変更しました。Qt Quick のマイナーバージョンアップの準備もほとんど整い、Qt の 4.7 ブランチで次のリリース(4.7.3)を待つばかりとなっています。QtQuick 1.1 に向けて [qt ‘いくつもの新機能’ l=qtquick-whatsnew v=4.7-snapshot] を実装しましたが、その中の一つであるバージョン管理機能の改善に特に焦点を合わせて紹介したいと思います。 昨年、私の wordgame モジュールを例に QML のバージョン管理システムに関する記事の公開をするつもりであることを言及しました。その記事の作成中に、バージョン管理システムにいくつかの機能が欠けていることに気がつきました。それらの機能は Qt Quick 1.1 で実装され、バージョン管理システム全体をより良い機能にすることが出来ました。その内容についてお話しさせてください。 QML モジュールでは C++ で現状可能な方法よりも良いアップグレードパスを実現することを目指しました。アプリケーションの動作が壊れたり、モジュールの作者に些細な変更の制限をすることのないように奮闘しました。その核となる手段はモジュールをバージョン番号を指定してインポートすることです。それが、’QtQuck’ モジュールをインポートする際にはモジュール名だけではなく、’QtQuick 1.1’とバージョン番号を付けなくてはいけない理由です。特定のバージョンを指定することによって、そのバージョンに限定した機能だけを利用することを可能にしました。そのモジュールが改良されて、新しい機能を持つバージョンであったとしてもです。この方法は、qmlRegisterType() の引数で指定するバージョン番号がまず必要です。ある型を導入する時、そのマイナーバージョンとメジャーバージョンを指定しなくてはなりません。アプリケーションがそのネームスペースに型を追加するには、最低でもその型を含むバージョンを指定してインポートしなくてはなりません。これによって、モジュールにシンボルの衝突を気にすることなく型を追加することが出来ます。

Read More
Get started today with Qt Download now