如何从“最近的项目”列表中删除QGIS项目?


24

我在QGIS的“最近的项目”列表中有一个不再存在的项目,但它一直被列出(显示为灰色且没有缩略图)。有什么方法可以将其从列表中删除吗?也许通过手动编辑历史文件或类似的东西?

我已经找到了对此的功能要求以及相关的讨论,但是我想知道QGIS 2.14现在是否可以做任何事情。

Answers:


36
  • 要删除特定项目,请从工具栏中转到Settings > Options > Advanced

    高级选项

    庄严保证您会小心并单击。找到该UI文件夹并找到recentProjects。在这里,您将看到最近项目的索引:

    最近的项目

    您可以加宽“ 值”列以查看有关项目的更多详细信息。确定要删除的项目,并记下文件夹号(例如2)。然后在Python控制台中,输入:

    from PyQt4.QtCore import QSettings
    QSettings().remove('UI/recentProjects/2')
    

    重新启动QGIS,该项目应从列表中删除。


  • 要删除整个“ 最近的项目”列表,可以在Python控制台中输入以下内容:

    from PyQt4.QtCore import QSettings
    QSettings().remove('UI/recentProjects')
    

    重新启动QGIS,您应该会看到列表已清除。


8
认为现在是提出功能请求以使其自动化的时候了。对于冗余项目,我也遇到了同样的问题...而且我不能保证会小心!
Andrew Tice

3
具有与此功能相关联的其他一些功能将是“不错的”。我想增加最近可以看到的项目数量。我还希望能够选择查看较大的缩略图还是较小的缩略图(如未保存项目,就像我看到的那样),也许是最近的项目网格而不是列表(看到我有)宽屏,缩略图的右侧有很多空白)。
Johanna

@AndrewTice-我也有多余的项目,但是我倾向于忽略它们。随时添加功能请求!...并且如果您不能保证会小心的话,也许还需要添加另一个功能请求以“撤消”按钮=)
Joseph

@Johanna-这些功能听起来很有用,尤其是在使用宽屏显示器或高分辨率时。再次考虑添加功能请求 :)
约瑟夫

1
@Joseph-我用纯Python解决方案发布了另一个答案。
Stefan,

2

您也可以尝试

设置->选项->系统-> Q设置->重置

这可能会重置最近的列表。


2

如果使用Windows计算机,从列表中清除项目的最简单方法是使用Regedit从注册表中删除它们。

点击Win + R并输入“ regedit”,然后导航至:

HKEY_CURRENT_USER \ Software \ QGIS \ QGIS2 \ UI \ recentProjects

最近的项目密钥将为每个项目都有一个子项,并且根据它们上次打开的时间顺序(从1开始到最近),它们的名称从1到10。您可能希望将此键添加书签以方便以后使用(“文件”菜单>“收藏夹”>“添加到收藏夹”),并且由于Regedit没有撤消功能(右键单击>“导出”,然后选择文件名和位置),您也可能希望导出最近的项目键。 )。

您可以在每个项目的子字符串值(CRS,项目路径,预览图像和标题)中查看其详细信息。从那里有一个简单的问题,就是删除不需要的项目的键。您甚至可以复制这些键之一,然后将字符串配置为指向项目,并根据需要自定义png预览图像添加一个。

另一注:以这种方式执行不会删除任何文件。项目文件和数据文件应该很容易找到,如果您也想摆脱它们,但是以这种方式进行操作也将使png预览图像孤立在一个晦涩的数据文件夹中,直到地球撞向太阳为止。如果您也想摆脱它们,则可以在C:\ Users \ User folder \ .qgis2 \ previewImages或类似文件夹中找到它们,具体取决于您的操作系统和配置。

快乐的映射!


2

除了Josephs的答案,我想在这里发布一个纯Python解决方案,以获取QGIS Python控制台中所有最新项目的信息。我是在评论约瑟夫(Josephs)答案的时候问这个的,不想再问一个额外的问题。

from PyQt4.QtCore import QSettings
for key in QSettings().allKeys():
    if 'recentProjects' in key:
    #if 'recentProjects' and 'title' in key:  # if only the title is wanted
        print key + ' - ' + QSettings().value(key)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.