首页 科技正文

(德州百姓网):qt creator源码全方面分析(2-0)

admin 科技 2020-07-05 19 3
看完这些,“你也能成技术”专家

目录

  • Extending Qt Creator Manual
    • “生成领域特定的代码和模板”
      • “代码片段”
      • 【文件和项目模板】
      • 自定义向导
    • 支持其他文件【类型】
      • MIME【类型】
      • 高亮和缩进
      • 自定义文本编辑器
      • <其他自定义编辑器>
    • 〖运行外部工具〗
      • 简单的外部工具
      • 复杂的外部工具
    • 所有主题

Extending Qt Creator Manual

Qt Creator是为Qt开发人员的需求量身定制的跨平台集成开发环境(IDE)。

Qt Creator可以通过多种方式扩展。 例如,Qt Creator架构基于插件加载器,这意味着插件加载器以外的所有功能都在插件(中)实现。 但是,您可以扩展和调整Qt Creator的许多部分,而无需求助于C++编码,《以及实现这样的插件》。

本文档概述了扩展Qt Creator的各种方法,根据您要实现的目标,并为您提供了相关的文档。

“生成领域特定的代码和模板”

如果您经常需要编写相同的代码,无论是小的“代码片段”,整个文件还是分布在多个文件(中)的类,“还是完整的项目”,都可以为此目的创建“代码片段”,模板和向导。

“代码片段”

(通常),片段包含几行代码(尽管它们也可以是纯文本),您(通常)希望将其插入到更大的代码主体(中),但不想每次都键入一遍。 例如,while和for循环,if-else和try-catch『构造以及类框架』。 片段的触发方式与普通代码编写一样(请参阅提供代码辅助)。Qt Creator包含一组预配置的“代码片段”,您可以在其(中)添加自己的片段。

> Snippets User Interface (‘ <《【《{翻译}》】》>[’)

【文件和项目模板】

您可以扩展文件>新建文件或项目(中)的向导, 通过为自己的【文件和项目模板】编写JSON定义文件来扩展。

  • Adding New Custom Wizards
  • User Interface Text Guidelines(‘ <《【《{翻译}》】》>[’)

自定义向导

如果上述“代码片段”和模板的方法,还不能满足您的使用,那么你可以创建一个自定义的Qt Creator插件。 这使您在向导之外可以完全自主控制,“但这需要您自己编写大部分”UI和逻辑代码。

  • Creating Plugins(‘ <《【《{翻译}》】》>[’)
  • Qt Creator Coding Rules(‘ <《【《{翻译}》】》>[’)
  • Creating Wizards in Code(‘ <《【《{翻译}》】》>[’)
  • User Interface Text Guidelines(‘ <《【《{翻译}》】》>[’)

支持其他文件【类型】

如果您有扩展文件或MIME【类型】文件,而Qt Creator默认不处理,你可以编辑MIME【类型】定义,添加高亮定义文件,(并创建你自己的文本编辑器)。

MIME【类型】

你可能会发现Qt Creator可以处理您的特定文件,如果知道其内容的【类型】的话。 例如,对Qt Creator【来说】,未知的C++头文件或源文件扩展名。你可以修改Qt Creator(中)的MIME【类型】定义,来适应你的特定设置,通过添加或删除文件扩展名,并指定魔术头(magic headers)。

  • Editing MIME Types(‘ <《【《{翻译}》】》>[’)
  • MIME Type Specification Files

高亮和缩进

对于文本文件,Qt Creator提供了一种简单的方法,来为默认情况下未知的文件【类型】,添加高亮和缩进。常规高亮是基于Kate Editor提供的高亮定义文件。 您可以下载高亮定义文件,用于Qt Creator,<而且也可以创建自己的定义文件>。

  • Generic Highlighting(‘ <《【《{翻译}》】》>[’)
  • Writing a Syntax Highlighting File

自定义文本编辑器

除上述MIME【类型】和高亮功能外,如果您需要其他高级功能,《例如自定义文本补全或语义分析功能》,你可以使用自己的文本编辑器扩展Qt Creator。 Qt Creator提供了特殊的API,【为你的文本】编辑器提供基础,从根本上消除了实现文本编辑器的痛苦。

给 iTerm 终端设置代理

  • Creating Plugins(‘ <《【《{翻译}》】》>[’)
  • Qt Creator Coding Rules(‘ <《【《{翻译}》】》>[’)
  • Providing Code Assist

<其他自定义编辑器>

<您还可以添加完>全自定义的编辑器,彻底掌控其外观和行为。

  • Creating Plugins(‘ <《【《{翻译}》】》>[’)
  • Qt Creator Coding Rules(‘ <《【《{翻译}》】》>[’)

〖运行外部工具〗

大多数软件项目和开发过程都需要各种外部工具。 Qt Creator{(中)集成了一些外部工具},例如流行的版本控制系统和构建工具链。 但是,『一个工具不可能涵盖所有用例』,因此您可以将其他工具集成到Qt Creator(中)。

简单的外部工具

在Qt Creator(中),“您可以指定工具”,然后可以从菜单或使用你设置的键盘快捷,来运行这些工具。 这使您可以完成某些事情,但有一些限制。 您指定要运行的命令,【附加的参数和输入】,以及如何处理输出。 要指定值,可以使用一组内部Qt Creator{变量},例如当前文档或项目的文件名,或文本编辑器(中)当前选择的文本。 如果发现缺少{变量}, 请毫不犹豫地填写功能建议[。 工具描述将另存为可以共享的XML文件。

复杂的外部工具

当您计划集成更复杂的工具时,请仔细考虑,将工具《紧密集成》到Qt Creator(中),或主要通过提供一种使用适当参数启动工具的方法来进行松散集成,那种更有好处。

松散集成工具

如果Qt Creator和外部工具之间不需要交互,启动外部程序,并使用其自带用户界面, 会[更好。这样可以避免Qt Creator用户界面混乱,而且即使完全不使用Qt Creator,该工具也具有良好的界面。

(通常),(您可以使用外部工具规范)文件来启动工具。如果启动该工具,处理其输出,需要更复杂的逻辑,则可以通过插件在Qt Creator(中)添加菜单项。如果需要在Qt Creator(中)配置工具,则可以为其添加选项页面。

  • Using External Tools(‘ <《【《{翻译}》】》>[’)
  • External Tool Specification Files(‘ <《【《{翻译}》】》>[’)
  • Creating Plugins(‘ <《【《{翻译}》】》>[’)
  • Qt Creator Coding Rules(‘ <《【《{翻译}》】》>[’)

与工具输出进行交互

在某些情况下,〖运行外部工具〗不需要与Qt Creator《紧密集成》,但是研究该工具的输出可能会从(中)受益。 例如,某些工具在项目的一部分文件(中)生成<问题>列表,《而某些工具创建与代码》相关的输出。 对于这些工具,在输出和相应的代码之间进行交互切换非常有用。

处理该<问题>的一种方法是让该工具创建一个输出文件,然后在Qt Creator(中)打开该文件。 「您提供了一个用于处理此文件的编辑器」(可能是只读的)。 对于<问题>列表,『请考虑创建任务』列表文件,这些文件显示在<问题>输出窗格(中)。

  • Showing Task List Files in the Issues Pane(‘ <《【《{翻译}》】》>[’)
  • Creating Plugins(‘ <《【《{翻译}》】》>[’)
  • Qt Creator Coding Rules(‘ <《【《{翻译}》】》>[’)

所有主题

  • 开发Qt Creator插件
    • Creating Plugins
    • Creating Wizards in Code
  • 参考
    • MIME Type Specification Files
    • External Tool Specification Files
    • Highlight Definition Files
    • Qt Creator Variables
    • User Interface Text Guidelines
    • Writing Documentation
    • Qt Creator Coding Rules
    • Qt Creator API Reference

原创造福大家,共享改变世界

献出一片爱心,温暖作者心灵

,

Sunbet

Sunbet www.tggzfm.com展望2019年,将用完善的服务体系,创新的技术应用,雄厚的资金实力,贴心的服务品质,成为每位申博会员、代理的首选平台。

版权声明

本文仅代表作者观点,
不代表本站Sunbet的立场。
本文系作者授权发表,未经许可,不得转载。

评论

精彩评论
  • 2020-05-08 00:50:26

    诚信在线藗/(www.chengxin11.cn)现已开放诚信在线手机版下载。游戏公平、公开、公正,用实力赢取信誉。让人羡慕啊

    • 2020-05-09 17:23:59

      @sunbet联系 全讯网APP是全讯网APP、皇冠最新网址的线路登入备用网址。新2皇冠备用网址提供多条新2皇冠最新、最快的登录线路,包括新2代理线路、新2会员线路,并提供新2皇冠最新网址APP下载。这写的也太好了。

  • 2020-07-05 00:04:46

    欧博客户端欢迎进入欧博客户端(Allbet Game):www.aLLbetgame.us,欧博官网是欧博集团的官方网站。欧博官网开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。今日签到