如何在Qt中开发自定义小部件插件?

时间:2012-03-20 06:04:16

标签: qt

我想创建可以从设计器拖动的自定义插件。插件必须是容器,因此用户可以将其他自定义插件拖放到容器插件中。

1 个答案:

答案 0 :(得分:2)

在设计小部件之后,为了将其添加到Qt Creator中,您需要从QDesignerCustomWidgetInterface创建子类并实现其接口。 (See documentation

所有都是复制和粘贴的问题。您可以使用Qt Creator的向导“Qt Custom Designer Widget”。它将生成子类,用您给出的信息填充它并生成代码。

然后你应该编译并安装你的小部件。输出是一个共享库(Windows中为dll或Linux中为.so)。您应该将已编译的库复制到设计器的插件路径中。对我来说,插件位于/usr/lib/x86_64-linux-gnu/qt4/plugins/designer/。此外,如果您已经使用SDK或独立安装程序安装了Qt Creator,您也可以这样做。

对于容器小部件,只需在子类中实现bool QDesignerCustomWidgetInterface::isContainer()成员函数,然后从中返回true。此外,向导将询问您是否要创建容器小部件;)