0

システム内のすべてのドライブのファイルを表示できるカスタマイズされたウィジェットを作成したいと考えています。レイアウトは次のとおりです。

QListView のすべての行には、タイトル バー (QLabel) と、ファイルを表す多くのアイコンを含む QListWidget が含まれています。

QItemDelegate を使用して QListView の外観をカスタマイズする方法は知っていますが、そのような複雑なウィジェットを作成する方法はわかりません。

誰でも私を助けることができますか?この投稿を読んでいただき、誠にありがとうございます。

4

1 に答える 1

0

私はQFileSystemModelあなたが探している最終的な解決策にかなり近いと思います:

http://qt-project.org/doc/qt-5/QFileSystemModel.html#details

model = new QFileSystemModel();
QModelIndex mindex = model->setRootPath(QDir::homePath());
QTreeView * tree = ui->treeView;
tree->setModel(model);
tree->setRootIndex(mindex);

// Demonstrating look and feel features
tree->setAnimated(true);
tree->setIndentation(20);
tree->setSortingEnabled(true);
tree->setAlternatingRowColors(true);

ファイル ツリーの複雑な XML ビューの Qt の組み込み例もあります。

http://qt-project.org/doc/qt-5.0/qtxmlpatterns/xmlpatterns-filetree.html

モデル/デリゲート プログラミングを使用した高度な例に関する限り、ここに私が見つけたリソースがあります。

http://qt-project.org/doc/qt-5/model-view-programming.html

http://qt-project.org/doc/qt-5/model-view-programming.html#related-examples

コード スニペットの他の場所は、モデル クラスとデリゲート クラスを使用する抽象クラスの詳細情報にあります。例えば:

http://qt-project.org/doc/qt-5/qabstractitemdelegate.html#details

それが役立つことを願っています。

于 2014-10-09T18:26:47.637 に答える