编写Qt Designer自定义控件(一)——如何创建并使用Qt自定义控件
2015-06-09 14:11
801 查看
编写Qt Designer自定义控件(一)——如何创建并使用Qt自定义控件
分类: Qt/article/2050371.html 在使用Qt Designer设计窗体界面时,我们可以使用Widget Box里的窗体控件非常方便的绘制界面,比如拖进去一个按钮,一个文本编辑器等。虽然Qt Designer里的控件可以满足我们大部分的需求,但是有时候,也会产生一些特殊的需要,比如一个输入框,我们要输入的是经纬度,此时就会有两种输入方式,一种是小数形式,一种是度分秒的形式,此时只使用一个简单的LineEdit是无法满足需求的。我们设想构造这样一个输入控件,它可以支持浮点数输入,同时它还具有一个属性,更改这个属性可以使其切换为经纬度输入形式。如果我们的多个窗体上都需要输入经纬度,那么构造这样一个控件,将会非常方便。下面就以此为例,讲解一下如何创建自定义的窗体控件。
第一步:创建QtDesigner自定义控件工程
打开Qt Creator,创建一个Qt 设计师自定义控件,如下图所示:
根据向导提示,创建好工程,这里取名为LogLatEdit,工程目录如下图所示:
第二步:编译控件工程
为了淌通整个自定义控件的编写流程,我们先不做任何更改,切换为Release版本,直接编译一下。
第三步:部署插件
编译完成后,在输出目录下,将生成的dll文件和lib文件一起拷贝到Qt的插件目录下,以我使用的Qt 4.8.4为例,在Qt 4.8.4的安装目录D:\Qt\4.8.4下,找到plugins目录,在其中找到designer目录,然后把dll和lib放进去,完整路径为:D:\Qt\4.8.4\plugins\designer。之后,启动D:\Qt\4.8.4\bin下的designer.exe,创建一个窗体,此时就会发现在左侧的Widget
Box里出现了我们自己的LogLatEdit控件,我们可以像使用其它控件一样,把我们自己的控件拖绘到窗体上,如下图所示:
如果自定义控件没有出现在Widgetbox里,那么此时你可以通过【帮助-关于插件】菜单,打开插件信息对话框,点击刷新按钮,只要你没有忘记把dll和lib文件拷贝到正确的位置,插件都会自动识别并加载。对于其它版本的Qt也一样,比如我自己的电脑里安装了好几个版本的Qt,对于其它版本的Qt,做法也是一样,只需要把插件工程生成的dll和lib文件放置到相应版本的插件目录下去即可。
到此,我们就理清了如何创建一个自定义控件,并且知道了如何部署、加载并使用自定义控件。下面我们开始编写我们需要的控件,对于只想了解自定义控件开发过程的读者,至此就已经知道如何做了,那么后面的内容您可以略过不读了。
未完,待续。
相关文章推荐
- 编写Qt Designer自定义控件(四)——使用自定义控件
- Qt下QTableWidget的使用
- Qt中出现的错误总结
- Qt之自定义界面(二)添加最小化、关闭按钮、添加背景
- VS2010+QT5编程之QTableView同时删除选中的多行
- 跨平台工程移植:opencv_pnp + artoolkitplus :ubuntu qtcreator--> windows qtcreator/ VS
- qt4.8到qt5.2windows版本的升级遇到的实际问题.
- QT5-step-by-step-LayoutManagement
- QT5-step-by-step-BasicKnowledge
- Qt + opencv mat转换成qimage后无法使用qpainter显示
- QT5安装(null)
- Qt的model中一裤衩函数的总结
- qt大全(连接)
- Qt学习记录4——mainwindow的布局使用
- 关于Qt在子线程中使用QMessageBox的折衷方法
- Qt5链接MySql--QMYSQL driver not loaded
- QT带OpenGL与不带的区别,QT5是一个伟大的框架,短时期内根本不会有替代者
- 使用QT 4.8.6 + Cmake 3.0.0 编译 最新版本OpenCv3.0.0
- QT 4.7.6 驱动 罗技C720摄像头
- Qt之QTableWidget的使用及常用设置