【发布时间】:2016-11-04 18:25:11
【问题描述】:
假设我的项目名为foo。我使用 Windows 资源管理器在 foo 根目录中创建了一个名为 subdir 的子目录。我把我的main.qml 文件放在subdir 中。然后我尝试在我的项目中对“文本”进行项目范围的搜索。为此,我按下Ctrl+Shift+F,在Scope 中选择Project "foo",在Search for 中写入“文本”。尽管main.qml 确实包含字符串“text”,但没有找到匹配项。当main.qml在项目根目录下,找到字符串就好了。
这是 Qt Creator 中的错误吗?我可以在选项中修复它吗?
Qt Creator 版本:4.1.0。
补充说明
.pro 文件不包含 main.qml,但 .pro 文件包含 RESOURCES += qml.qrc,qml.qrc 包含 <file>subdir/main.qml</file>。 Creator 中的项目查看器确实在树中显示 main.qml,嵌套为“Resources -> qml.qrc -> / -> subdir ->main.qml”。
如果“项目焦点”意味着它必须是通过右键单击项目并选择“将 'myproj' 设置为活动项目”设置的“活动项目”,那么我满足了该要求。
我尝试在项目中包含一个位于项目根目录中的资源文件(称为“main2.qml”),以便我可以查看它是否自动包含在 .pro 中。它确实被包括在内,如下所示:
DISTFILES += \
main2.qml
而且,奇怪的是,现在我包含了这个新文件,驻留在子目录中的旧文件也可以搜索。
即使我从项目中删除了 main2.qml,子目录中的文件仍然可以搜索!它们甚至在我的其他项目中变得可搜索,而我没有改变任何东西!
很奇怪。我预计很快搜索就会再次出现问题,所以我仍然想了解可能导致问题的原因。
【问题讨论】:
-
我认为该文件需要实际包含在项目中,然后 Qt 创建者才能查看它以找到一些东西......所以当你更改 main.qml 的位置时,你是否更改了 .pro 文件也包括它?
-
@H.G:请看我的编辑。
标签: qt qt-creator