記事を使用してプログラミングQTモデル/ビュー

モデルとビューを使用して

  次のセクションでは、Qtの中で、モデル/ビューモードを使用する方法について説明します。各章には、新しい章コンポーネントを作成する方法、その後の例を含んでいます。

Qtは二つのモデルが含まれています

  Qtのが提供する二つの標準モデルがQStandardItemModelとQFileSystemModelです。QStandardItemModelは、異なるデータ構造の多様性を表すために使用できる汎用性の高いモデルですリスト、テーブル、ツリービューを必要としていました。また、このモデルでは、データ項目が含まれています。ディレクトリ情報のQFileSystemModel内容は、メンテナンスのモデルです。したがって、任意のデータ項目が含まれていませんが、唯一のローカルファイルシステム上のファイルやディレクトリを表します。

  QFileSystemModelモデルの準備ができてテストを提供することができ、容易に既存のデータを使用するように構成することができます。このモデルを使用して、我々はどのように準備ができて、ビューを使用してデータを操作するためのモデルインデックスを使用する方法を探求するモデルを構築する方法を示すことができます。

既存のモデルのビューを使用します

  QListViewとQTreeViewビュークラスはQFileSystemModelで使用するために最も適切です。次の例が示すツリービュー内のディレクトリの内容を、同じ情報が、リストビュー内の次です。ビューには、両方のビューで選択した項目を強調するために、ユーザーの選択を共有しました。

 

 

 あなたが使用して、ディレクトリの内容を表示するには、いくつかのビューを作成できるように、我々はQFileSystemModelを設定します。これは、モデルを使用する最も簡単な方法を示しています。モデルの構築および使用は、main()関数が終了すると次のとおりです。

 

 

モデルは、ファイルシステムからのデータを使用することです。モデルファイルを指示するシステムコール上のドライブへのsetRootPathは()ビューに開かれています。

私たちはモデルをチェックするには、2つの異なる方法を投影できるように、私たちは、二つのビューを作成しました:

 

 

ビューは、他のウィジェットと同じように構成されました。モデルの表示項目にビューを設定し、モデルは単にそれを呼び出すために、引数としてディレクトリを使用してsetModel()関数。我々は、モデルによって提供されるデータ、ファイル・システム・モデルからカレントディレクトリに適した伝送モデル指数をフィルタリングするsetRootIndex()関数によって、各ビューを呼び出します。

インデックス()関数で使用される本実施形態はQFileSystemModelに一意であり、我々はそのためのディレクトリを提供し、それは、モデル指標を返します。モデルクラスモデルインデックスに議論しました。

スプリッタ機能のみを示しビューのごく一部、およびアプリケーションを実行するためのイベントループの残り:

 

 

上記の例では、プロジェクトをどのように処理するかを選択し、無視します。より詳細に閲覧治療の選択肢の一部に、このトピックについて話し合います。

おすすめ

転載: www.cnblogs.com/helloc14/p/12383293.html