如何在Design Viiew中显示Q_PROPERTY

How to get Q_PROPERTYs to show in Design Viiew

本文关键字:显示 PROPERTY Viiew Design      更新时间:2023-10-16

我有一个从QPushButton派生的带有Q_Property的类,但它们不会出现在设计模式的属性编辑器中。

在设计视图中,有一个QPushButton被提升到我的自定义类中,我希望属性能自动显示在属性编辑器中,至少是类型为"int"的属性。我很有可能误解了一些简单的事情。

以下是代码中的相关行:

class virtualButton : public QPushButton
{
Q_OBJECT
Q_PROPERTY(int number MEMBER m_number DESIGNABLE true USER true STORED true CONSTANT)
Q_PROPERTY(buttons::keySet set MEMBER m_set DESIGNABLE true USER true STORED true CONSTANT)
...

代码编译得很好。

您用小部件制作了Qt插件吗?

如果它只是代码,并且你在Qt Designer中通过"传播到"使用它,那就没用了,只有提供一个插件才有效。在这里以及官方文档中的类似文章中阅读更多信息。

简而言之,您可以为Designer提供使用Qt插件框架制作的库,这些库将包含您的小部件。当然,如果你认为这是值得的。