Qt Creator “Promote to“功能 笔记

10 篇文章 0 订阅

Promote to 功能的官方说明:https://doc.qt.io/archives/qt-4.8/designer-using-custom-widgets.html

Qt desiner支持了所有的标准widget的可视化操作,但是一些专门的widget不能像标准widget一样进行可视化操作,因为:

  • 在设计用户界面时,自定义widget可能不可用。
  • 自定义widget可能是平台依赖的,设计师可能会在与最终用户不同的平台上开发用户界面。
  • 自定义widget的源代码不可用,或者用户界面设计人员由于非技术原因无法使用该widget。

但qt desiner中仍可以使用自定义widget来设计应用,即通过qt desiner中的 widget promotion 功能来实现这一点。
如果自定义widget的源代码可用的话,我们可以用qt desiner调整这些自定义widget。

Promoting Widgets

如果一些样式是必须设计的,但是其中用到的自定义部件在qt desiner里没有可视化图形,我们可以用与自定义部件相似的部件来替代缺少的部件。

例如,我们可以用QPushButton的实例来表示一个自定义的按钮类MyPushButton的实例,并将这些实例 promote 到MyPushButton,这样uic就会为这个缺失的类生成合适的代码。

当选择一个标准widget作为替代自定义widget的占位符的时候,应该比较一下自定义widget和标准widget两者之间的API,对于那些继承于标准类型widget的自定义widget来说,首选的占位符是它们的基类。比如说一个QSlider类widget可以用于替代一个继承于QSlider类的自定义widget类。

如果说你的自定义widget和哪个标准widget都不共享API,你可以考虑调整一下你的自定义widget来让它和某个标准的widget共享API。如果实在没办法的话,你可以选择QWidget来替代你的自定义widget,因为QWidget是所有类的基类。

使用promote功能的具体操作是首先选择一个合适的标准widget拖到窗口中,然后右键点击该widget,选择“promote to”。在对话框下半部分输入类名和头文件名后,选择添加。占位类将与基类一起出现在上层列表中,最后单击 "promote"按钮即可。

当你添加了一个自定义widget类作为某个标准widget的promote目标后,在你下次右键点开“promote to”选项时,该自定义类会自动在菜单里显示出来,方便其他标准widget来promote。

如果你撤销你对标准widget的promote操作,只需右键点击该widget,选择“demote to”即可。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Qt Creator是一款集成开发环境,它提供了强大的功能支持,包括代码编辑、调试、图形化界面设计等。其中,书签功能是一项常用的辅助功能,它可以帮助开发者在代码中标记重要的位置,以便快速定位和访问。 然而,有时候我们可能会遇到Qt Creator的书签功能无法保存的情况。造成无法保存书签的原因可能有以下几种: 首先,可能是Qt Creator的配置文件发生了错误或损坏。配置文件中保存了用户的个性化设置和一些软件状态信息,如果该文件出现问题,可能导致无法保存书签。解决办法是尝试重新创建或重置配置文件,并重新启动Qt Creator。 其次,可能是使用的Qt Creator版本存在一些bug或问题。在软件开发中,bug是不可避免的,可能会影响到软件功能的正常运行。解决办法是检查是否有新的软件更新版本,如果有,尝试升级到最新版本来修复可能的问题。 另外,还有可能是用户没有正确操作导致书签无法保存。有时候我们可能会误操作或者不熟悉软件的某些功能,导致一些设置无效。解决办法是仔细查看Qt Creator的使用手册或者搜索相关的问题解答,检查自己是否遗漏了某些步骤或设置。 总的来说,Qt Creator的书签功能无法保存可能是由于配置文件错误、软件版本问题或用户操作错误所致。我们可以尝试重新创建或重置配置文件、升级软件版本以及仔细检查操作步骤来解决该问题。此外,如果问题仍然存在,还可以尝试向Qt Creator的开发者或相关论坛寻求帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值