QT 5.15中为RoundButton添加文本报错的问题排查
问题原因及解决
- 核心问题:RoundButton本身没有
text属性,这就是你遇到报错Cannot assign to non-existent property: text的根源。 - 和普通Button的差异:普通
Button组件内部默认的contentItem是Text组件,并且对外暴露了text属性来绑定文本内容,所以可以直接通过text设置按钮文字。 - RoundButton的文本设置逻辑:
RoundButton默认的contentItem是图标组件而非文本组件,因此它没有提供text属性供外部直接设置文本。如果需要给RoundButton添加文本,就像你代码里做的那样,自定义contentItem为Text组件,直接在这个Text内部设置text值即可,完全不需要在RoundButton层级添加text属性。
看你的代码,你已经自定义了contentItem为Text并设置了文字"Plan",同时又在RoundButton层级加了text: qsTr("RoundButton"),这就触发了属性不存在的错误,删掉这一行就可以正常运行。
内容的提问来源于stack exchange,提问作者Aryan Ghadge
相关产品推荐
相关产品推荐

