2012-03-20 45 views
0

我想创建一个可以从设计器拖动的自定义插件。插件必须是容器,以便用户可以将其他自定义插件拖放到容器插件中。如何在Qt中开发自定义插件?

+0

您正在使用哪种操作系统? – 2012-03-20 06:18:25

回答

2

设计好你的Widget后,为了将它添加到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。此外,向导会询问您是否要创建容器小部件;)