在从TouchGFX设计器中创建并导入到STM32CubeIDE工作区的示例项目中,用户gui文件夹只包含。cpp文件。示例项目本身(由存在。项目和。c项目文件表示)位于STM32CubeIDE文件夹中,而不是TouchGFX文件夹中。gui文件夹是位于STMCubeIDE/应用程序/User中的一个空文件夹,该文件夹是通过在TouchGFX设计器中生成代码时添加指向gui的。cpp文件的。项目文件来“填充”的。
可以通过双击编辑器中它们的名称来访问关联的。hpp文件,但它们被排除在Eclipse全局搜索之外,因为它们不会显式地出现在Eclipse项目的文件夹中。例如,创建了一个新的ScreenIDs.hpp文件,并添加了TouchGFX/gui/src/公共文件夹。
与现有的。hpp文件一样,放置在此位置允许项目中的。cpp文件访问该文件,而不会出现编译错误。但是,。hpp文件不能在IDE中直接访问,并且被排除在全局文件搜索之外。例如,考虑在ScreenIds.hpp中定义的术语SCREEN_MAIN:
对术语SCREEN_MAIN的全局文件搜索
只返回gui文件夹中链接的。cpp文件的结果,但不返回ScreenIds的结果:
这意味着Eclipse的全球搜索,当人们不熟悉项目组织时浏览项目的最强大的工具之一(就像人们在研究TouchGFX示例时可能会做的那样)大大减少了。此外,这意味着特定字符串或术语的全局替换不可能,必须在单个。hpp文件上“手动”替换,一旦它们通过全局搜索以外的其他方式“手动”定位。
注意到创建。cpp文件链接的机制,我想将一个类似的链接文件夹添加到用户/gui文件夹中,并煞费苦心地一次放置一个到内部的hpp文件的链接。瞧,这使得在全局搜索中可以找到。hpp文件。
但是,当项目的。touchgfx文件被编辑并在TouchGFX设计器中生成代码,然后刷新IDE时,链接的文件将从inc和src文件夹中消失(尽管它们仍然存在于系统中)。
所以,最后,这让我提出了我的问题:事实上,如何在这个相当复杂的设置中启用对。hpp文件内容的搜索?有没有什么建议的方法可以从IDE中添加新的。cpp和。hpp文件,而不是在Windows资源管理器(或正在使用的任何操作系统)中这样做?我可能错过了一些明显的东西,但我花了无数的时间试图找到一种方法来解决这个问题。
|