モジュール式のクラスライブラリ

Qt は、使いやすいモジュール式のC++クラスライブラリという形で、アプリケーションのビルディング・ブロック群を豊富に備えています。これらが、高度なクロスプラットフォーム・アプリケーションをビルドするために必要なすべての機能を提供します。

  • 直感的でわかりやすい
  • 使いやすく、学習が容易
  • 可読性が高く、メンテナンスが簡単なコードを作成

詳細情報


button Download Qt 4.7 SDK


中核モジュール: Qt Core モジュール

ドキュメント(英語)

Qt Core Moduleは、他のモジュールで使用される非グラフィカルクラスを使用したすべてのQtベースのアプリケーションの基盤を形成します。

主要な機能

メリット

  • アプリケーションのビルディング・ブロック群を活用することにより、開発のための時間と費用を削減
  • クロスプラットフォーム機能により、ポータブルコードを始めから開発

サンプルコードを見る

Webとローカルのコンテンツ及びサービスを1つのリッチアプリケーションに統合:Qt WebKit Integration

技術ドキュメントを読む                   

Logo - WebKitQt WebKit Integrationは、WebKit(KDEプロジェクトのKHTMLをベースにしたオープンソースのWebブラウザエンジン)をQtに統合したものです。Qt WebKit Integrationにより、Webコンテンツをネイティブアプリケーションに簡単に組み込んだり、ネイティブコントロールによりWebコンテンツを向上させるHTMLブラウザエンジンの開発が可能です。

主要な機能

  • Web表示エンジンの統合
  • HTML、XHTML、SVG、CSS、JavaScriptの使用
  • Flash、オーディオ・ビデオエレメントのアプリケーションへの組み込み
  • Webコンテンツ及びサービスをリッチアプリケーションに統合
  • HTMLドキュメントでネイティブコントロールをサポート

メリット

  • リアルタイムのWebコンテンツ及びサービスを組み込んだアプリケーションを短期間で開発可能
  • Webとローカルのコンテンツ及びサービスを1つのリッチアプリケーションにシームレスに統合
  • デスクトッププラットフォームやデバイスに左右されず、ブラウザ環境を完全にコントロール

Icon - PDF
ホワイトペーパー: Qt Features for Hybrid Web/Native Application Development

洗練されたGUIの構築:GUI Module

技術ドキュメントを読む                   

screenshot - CSWaveQtには、デスクトップ及び組み込みプラットフォーム向けに洗練されたGUIアプリケーションを開発するのに必要な機能がすべて揃っています。Qtは、サポートする各プラットフォームにネイティブなグラフィックスAPIを使用しているため、システムリソースを最大限に活かしながらネイティブなルック&フィールのアプリケーションを開発できます。

主要な機能

メリット

  • 豊富なビルディング・ブロック群により、少ないコード行数でユーザインターフェースを構築
  • アプリケーションやデバイスのルック&フィールを完全にコントロール
  • CSSコード数行でユーザインターフェースを簡単にカスタマイズ
  • 豊かなユーザエクスペリエンスを実現

サンプルコードを見る

ECMA標準に準拠したスクリプトエンジン:Qt Script Module

技術ドキュメントを読む                   

Qt には、ECMA標準に準拠したスクリプトエンジンが完全に統合されています。QtScriptでは、QObjectの統合、スクリプトにおけるQtのシグナル/スロットメカニズムの利用、C++とスクリプトの強力な統合などが可能です。

主要な機能

メリット

  • アプリケーションへのスクリプトの組み込みがさらに容易に
  • スクリプトのエラーレポートにより、ユーザはスクリプトのバグを発見可能

サンプルコードを見る

アプリケーションのネットワーク接続:Networking Module

技術ドキュメントを読む                   

Qt Networking Moduleなら、ネットワークプログラミングもクロスプラットフォームで容易に行えます。クライアント/サーバーのソケットを完全に抽象化。HTTP、FTP、DNS、非同期HTTP 1.1をサポート。

主要な機能

  • クライアントとサーバーのソケットを完全に抽象化
  • アプリケーション層プロトコルを実装するQHttpクラス及びQFtpクラスなどの上位クラス
  • QTcpSocket、QTcpServer、及びQUdpSocketなどの上位クラス
  • HTTP、FTP、DNS、非同期HTTP 1.1をサポート

メリット

  • ネットワークプログラミングの作成がクロスプラットフォームで簡単に

サンプルコードを見る

主要データベースをすべて統合:Database Module

技術ドキュメントを読む                   

QtSqlモジュールにより、Qtアプリケーションにシームレスなデータベース統合機能をもたせることも簡単です。Qtは主要なデータベースドライバをすべてサポートしており、データベースサーバーにSQLを送信したり、Qt SQLクラスを利用して自動的にSQLクエリーを生成することもできます。

主要な機能

  • ドライバレイヤ:ODBC、MySQL、PSQL、SQLite、ibase、Oracle、Sybase、DB2をサポート
  • APIレイヤ:特定のデータベースへのアクセスを実現
  • UIレイヤ:データベースのデータをデータ認識可能なウィジェットにリンク
  • Qtの モデル/ビュープログラミングモデルで使用可能

メリット

  • データベースのデータをQtに容易に統合
  • データをさまざまなビューに適した形式で表示
  • データをビューから分割することで、ユーザのフレキシビリティが向上し、わかりやすいようにデータを表示

サンプルコードを見る

アプリケーションのテスト期間を削減: Unit Testing Framework

技術ドキュメントを読む                   

Qtは、一般的なユニットテストフレームワークに見られるすべての機能に加え、GUIのテストのための機能も拡張します。

主要な機能

  • 軽量かつ内蔵型のテストフレームワーク
  • マウスとキーボードのシミュレーション機能
  • Visual StudioとKDevelop IDEに統合
  • カスタム型もテストデータやテストの出力として簡単に追加可能

メリット

  • テストの記述と実行のための時間と費用を削減
  • お使いのQtアプリケーションに対して短時間で複数回テストを実行
  • 高品質のアプリケーション及びデバイスを短い期間で市場投入

アプリケーション内からXMLデータの処理が可能:XML Module

技術ドキュメントを読む                   

QtXmlモジュールには、XML文書のストリームリーダー/ライター、SAX及びDOMプロトコルのC++実装ならびに、XQuery & XPathエンジンが含まれています。また、QtにはXQueryと呼ばれるSQLに似たシンプルなクエリー言語も用意されており、XML文書をトラバースして必要なXML要素を選択し、これらをまとめてXMLまたはその他のフォーマットで出力することができます。C++による大量のリソースを要求する手続き型プログラミングが不要になるため、クエリーが容易になります。

主要な機能

  • XML文書のストリームリーダー/ライター
  • SAX及びDOM APIプロトコルのC++実装
  • 高レベルのクエリー及び、XQueryクエリー言語を活用したXMLデータの操作を行うためのクラス
  • XML文書用のXSLT変換言語をサポート

メリット

  • わずか数行のコードで高度なXMLクエリーを実行可能
  • アプリケーション内からXMLデータのクエリー、抽出、変換が可能

Icon - PDF
ホワイトペーパー:XQueryによりアプリケーション内からXMLデータの処理が可能

サンプルコードを見る

高度な3Dグラフィックス:OpenGL Module

技術ドキュメントを読む                   

Screenshot - VTK Designer OpenGL QtのOpenGLモジュールは、OpenGL®及びOpenGL ESを使用して、3DグラフィックスをQtアプリケーションに簡単に導入るためのクラスを提供します。OpenGLは、ハードウェアアクセラレーションに対応したクロスプラットフォームの高性能ビジュアルアプリケーションを開発するための標準グラフィックスライブラリです。ただし、OpenGLは3Dビジュアリゼーションには最適ですが、アプリケーションUIの作成はほとんどサポートしていません。Qtは、OpenGLと密接に連携することによってこの問題を解決します。

主要な機能

  • OpenGLウィジェットにより、OpenGL APIを使ってグラフィックスをQtアプリケーションにレンダリング
  • 組み込みLinux及びWindows CEプラットフォームで、 OpenGL ES と統合
  • WindowsプラットフォームでDirect3D®をサポート

メリット

  • アプリケーションへの3Dグラフィックスの導入が容易
  • システムリソースを有効に利用することで最大限のグラフィックス性能を実現
  • Qtの高度なGUI機能を使用して、3Dアプリケーション用の洗練されたGUIを構築

Icon - PDF
ホワイトペーパー:Qt及びOpenGLを使用したクロスプラットフォーム対応ビジュアルUIの作成

サンプルコードを見る

マルチコアハードウェアを活用:マルチスレッディング機能

技術ドキュメントを読む                   

クロスプラットフォームに対応したQtのマルチスレッディング機能なら並列プログラミングも簡単に行え、並列性の向上によってマルチコアアーキテクチャの性能を容易に引き出すことができます。

主要な機能

  • スレッド、データ、オブジェクトの管理を容易化する機能
  • 異なるスレッドで型保証されたオブジェクト間通信を実現するQtの シグナル/スロット
  • 低レベルのスレッド機能を抽象化した高レベルの 並列API

Multicore Chip

メリット

  • マルチスレッドプログラムを簡略化
  • マルチコアアーキテクチャを有効に利用することで、実行時のパフォーマンスを最大限に向上
  • 低レベルのスレッディングプリミティブを使用せずにマルチスレッドプログラムの作成が可能
  • 利用可能なプロセッサコアの数に応じて、スレッドの数を自動調整

Icon - PDF
ホワイトペーパー:マルチスレッディング機能により、Qtによるプラットフォームの機能が最大限に向上

サンプルコードを見る

強力な2Dグラフィックスキャンバス:Qt Graphics View

技術ドキュメントを読む       

Screenshot - Widgets in Graphics View

Qt Graphics Viewには強力な2Dグラフィックスキャンバスが用意されており、多数のカスタマイズ2Dグラフィックアイテムを管理したり、インタラクティブに操作できます。また、ビューウィジェットにより、ズームや回転機能を使ってアイテムをビジュアル化できます。Graphics Viewでは、BSP(Binary Space Partitioning)ツリーを使用して数百万ものアイテムをきわめて高速に発見できるので、大きなシーンもリアルタイムでビジュアル化できます。            

主要な機能

  • ズーム、回転、透視変換、アニメーション
  • ドラグ&ドロップ、印刷をサポート
  • グラフィックスシーンにウィジェットを埋め込んで完全なインタラクティブ操作が可能

メリット

  • 高度なグラフィックエフェクトをすばやく作成
  • 数百万ものアイテムを優れた性能でビジュアル化
  • ユーザは新たな方法によるアプリケーションのインタラクティブ操作が可能

サンプルコードを見る

Qt Declarative: カスタム、ダイナミックユーザインターフェース

技術ドキュメントを読む                    


Qt Declarative モジュールには、タッチ機能を持つモバイル端末や組み込み機器を対象に、高度でダイナミックな、カスタムユーザインターフェースを作成するための強力なクラスのセットが用意されています。Qt Declarative は、Qt Quick user interface creation kit の主要コンポーネントです。

主な機能

  • QML 要素: UI と操作系のアイテムのセット
  • 宣言型プログラミング手法
  • Qt Declarative ユーザインターフェースを表示するための QtDeclarativeView ウィジェット

メリット

  • カスタマイズ性の高い、高度なユーザインターフェースをすばやく作成
  • QML 言語 と C++ の組み合わせによりアプリケーションを拡張 
  • 宣言型プログラミング手法を利用したUI の外観や動作の定義

サンプルコードを見る