Qt 是目前最先进、最完整的跨平台C++开发工具。它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。如今,Qt已被运用于超过70个行业、数千家企业,支持数百万设备及应用。
点击获取Qt Widget组件下载
本示例演示了树形视图的用法,以及在触摸屏上的平滑滑动。
Dir视图示例展示了本地文件系统的树视图,它使用QFileSystemModel 类来提供文件和目录信息。
![界面开发框架Qt新手入门教程:Dir视图使用实例](https://imgs.yssmx.com/Uploads/2023/06/479145-1.png)
QCommandLineParser parser;
parser.setApplicationDescription("Qt Dir View Example");
parser.addHelpOption();
parser.addVersionOption();
QCommandLineOption dontUseCustomDirectoryIconsOption("c", "Set QFileSystemModel::DontUseCustomDirectoryIcons");
parser.addOption(dontUseCustomDirectoryIconsOption);
QCommandLineOption dontWatchOption("w", "Set QFileSystemModel::DontWatch");
parser.addOption(dontWatchOption);
parser.addPositionalArgument("directory", "The directory to start in.");
parser.process(app);
const QString rootPath = parser.positionalArguments().isEmpty()
本示例支持许多命令行选项,这些选项包括:
- 应用程序描述
- -help 选项
- -version 选项
- 如果指定了选项{-c},应用程序将不会使用自定义目录选项
QFileSystemModel model;
QFileIconProvider iconProvider;
model.setIconProvider(&iconProvider);
model.setRootPath("");
if (parser.isSet(dontUseCustomDirectoryIconsOption))
model.setOption(QFileSystemModel::DontUseCustomDirectoryIcons);
if (parser.isSet(dontWatchOption))
model.setOption(QFileSystemModel::DontWatchForChanges);
QTreeView tree;
tree.setModel(&model);
将model声明为读取本地文件系统的数据模型,setrootpath("")将当前文件夹设置为模型将开始读取的文件夹,QTreeView对象树以树状结构可视化文件系统。
tree.setAnimated(false);
tree.setIndentation(20);
tree.setSortingEnabled(true);
const QSize availableSize = tree.screen()->availableGeometry().size();
tree.resize(availableSize / 2);
tree.setColumnWidth(0, tree.width() / 3);
设置文件系统树的动画、缩进、排序和大小调整的布局选项。
QScroller::grabGesture(&tree, QScroller::TouchGesture);
创建一个QScroller实例来识别触摸屏上的手势,这样您就可以用手指轻弹树视图。文章来源:https://www.toymoban.com/news/detail-479145.html
文章来源地址https://www.toymoban.com/news/detail-479145.html
到了这里,关于界面开发框架Qt新手入门教程:Dir视图使用实例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!