如何使用 pyqt5 在列表视图中列出所有磁盘?

Posted

技术标签:

【中文标题】如何使用 pyqt5 在列表视图中列出所有磁盘?【英文标题】:How to list all the disk in a listview using pyqt5? 【发布时间】:2018-01-14 19:57:00 【问题描述】:

我有一个 QListView,我想在其中显示所有磁盘名称。无论是否已安装。如果没有安装,它会要求我输入密码。我在 QStorageInfo 类中查找但没有得到它。 你能告诉我如何使用它,这样它就可以在mac、linux和windows中工作。

【问题讨论】:

【参考方案1】:

类 QStorageInfo 有静态方法mountedVolumes,它返回当前安装的驱动程序列表。如果您使用 QListView 您应该创建可以操作此数据的模型。作为快速解决方案,您可以像这样使用 QListWidget:

for(const auto &storage :  QStorageInfo::mountedVolumes()) 
  listWidget->addItem(storage.name());

Qt 没有安装驱动程序的类或方法。您可以在 Linux 中使用 udev 库。

附言对不起 c++ 代码,我认为将其转换为 python 代码不是问题。

【讨论】:

以上是关于如何使用 pyqt5 在列表视图中列出所有磁盘?的主要内容,如果未能解决你的问题,请参考以下文章

Flutter 中的列表视图

使用 Dropbox API 列出 Dropbox 的所有文件夹和文件

在布局中创建的列表视图中列出配对的蓝牙设备

Laravel 列出视图中的路由

PyQt5 - CSV导入,显示和滚动建议 - 视图与小部件,QTreeView与其他

如何在 Django 通用列表视图类中使用 slugfield 创建链接?