Qt自定义控件

1 创建QtDesigner自定义控件工程

打开Qt Creator,创建一个Qt 设计师自定义控件,如下图所示:

根据向导提示,建立一个新类,取名“Test"(注:首字母大写,不能全小写,不然后面会出错),一直点击”下一点“,完成工程创建;

2 编辑工程代码

在新建的工程中,Test 类没有ui界面文件,我们要手动添加上去,如果没有ui界面文件,工程编译也可以通过,但该控件添加到ctreator后,一打开desinger工具的时候就会直接挂掉;所以,我们可以把原先的 Test 类的 test.ctest.h 删除掉,重新添加一个Test类;

新建一个Test类(类名一点要和之前一样),如下:

在工程头文件 test.h 中添加 #include <QtUiPlugin/QDesignerExportWidget>,在类名前添加 QDESIGNER_WIDGET_EXPORT 宏。如下图:

3 生成库文件

  • 选择生成 Rlease 版本
  • 执行 qmake
  • 构建该项目

完成这三步就会在对应目录下生成 libslidingbarplugin.so 文件;

4 部署插件(控件)

把上一步生成的 libslidingbarplugin.so 文件分别拷贝到 QT 库的 designer 路径下和 QT 的 IDE 工具的 designer 路径下;

  • QT库的designer库路径:/usr/local/qt5.9.2/5.9.2/gcc_64/plugins/designer
  • QT库的IDE路径:/usr/local/qt5.9.2/Tools/QtCreator/lib/Qt/plugins/designer

Qt重启生效;

5 使用插件

  • 新建一个工程;
  • 打开*.ui,在左侧的控件栏的最下面会出现我们前面编译的自定义插件,直接把它拖拽到ui界面;
  • 在该工程所在文件目录中:新建include文件夹,将前面的插件头文件 test.h 放在该 include 文件夹中;新建 lib 文件夹,将前面生成的 libslidingbarplugin.so 静态库放在此 lib 文件夹中;
  • 打开测试工程的*.pro文件。添加相应的 include 路径和 lib 路径:
    LIBS += $$PWD/lib/testplugin.lib
    INCLUDEPATH += $$PWD/include
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值