你需要了解一个事实:在UI中使用自定义控件,有插件法和提升法两种方式。二者是等价的,也就是说,你给designer写插件,对你的程序没有多少用途。
插件法的典型用法如下:
1. 你写了一大堆的自定义控件。
w1.h/w1.cpp w2.h/w2.cpp w3.h/w3.cpp ...
2. 你将其做成动态库
w.dll 或 w.so 或其他后缀
2.1 我们都知道,要使用这堆控件,就是 include 头文件,链接你的 w 动态库。这就不足够了。如要在designer中使用,直接提升法也很容易(提升的时候,你需要告诉它头文件,这样就自动出现在 ui_xxxx.h中了)。
3. 但为了要在designer中拖拽使用,或者你在designer中看到你的自动以控件的样子,你就编写了一个插件
w_plugin.dll 或 w_plugin.so 或 ...
3.1 但说到底,这个插件和你的程序没有什么关系。你的程序还是需要,include头文件(编写插件时,你已经告诉它你的头文件,这样就自动出现在 ui_xxxx.h中了),并链接你的 w 动态库。