做过安防视频监控的同学都清楚,在视频监控系统软件上都可以看到一个云台控制区域,可以对球机进行下下左右等八个方位的运动控制,还可以进行复位,一般都是美工作图好,然后贴图的形式加入到软件中,好处是程序简单,界面美工,主要取决于美工的美图能力,缺点是对于各种分辨率的适应性稍微差点,需要不同的图片切图贴图,除非默认做好的是大图自适应看不出差别,可能大部分人所在的公司都是小公司,一般美工人员比较少甚至没有,都需要程序员一人负责,甚至一开始就要考虑到各种分辨率的应用场景以及后期可能的换肤换色等.之前做过很多…
一.前言 在Qt自定义控件中,仪表盘控件是数量最多的,写仪表盘都写到快要吐血,可能是因为各种工业控制领域用的比较多吧,而且仪表盘又是比较生动直观的,这次看到百度的echart中有这个控件,所以也来模仿做了一个,其实掌握了一两个仪表盘的绘制方法以后,其他仪表盘的绘制都是如鱼得水,基本上变化很小.总结起来就如下几点: 1:仪表盘边框 2:刻度尺 3:刻度值 4:圆环进度 5:指针 6:当前值 7:仪表盘标题 无论什么仪表盘,基本上包含的上面几个要素的大部分,所以只要掌握几个要素的绘制,任何仪表盘绘制…
前言 在很多项目应用中,需要根据数据动态生成对象显示在地图上,比如地图标注,同时还需要可拖动对象到指定位置显示,能有多种状态指示,安防领域一般用来表示防区或者设备,可以直接显示防区号,有多种状态颜色指示,例如布防.撤防.旁路.报警.离线.在线等状态,可以作为一个通用的设备按钮对象使用. 实现的功能 1:可设置防区样式 圆形.警察.气泡.气泡2.消息.消息2 2:可设置防区状态 布防.撤防.报警.旁路.故障 3:可设置报警切换 4:可设置显示的防区号 5:可设置是否可鼠标拖动 效果图 头文件代码…
前言 动画按钮组控件可以用来当做各种漂亮的导航条用,既可以设置成顶部底部+左侧右侧,还自带精美的滑动效果,还可以设置悬停滑动等各种颜色,原创作者雨田哥(QQ:3246214072),驰骋Qt控件界多年,雨田哥是我见过的在这块水平相当牛逼的,在我之上,想要什么效果都可以搞出来,大家也可以找他定制控件,物美价廉! 实现的功能 1:可设置线条的宽度 2:可设置线条的颜色 3:可设置线条的位置 上下左右 4:可设置按钮的正常+悬停+选中背景颜色 5:可设置文字的正常+悬停+选中背景颜色 6:切换位置线条…
一.前言 在各种各样的执行任务界面,有时候需要比较多的时间,需要给出一个直观的等待进度条表示当前正在执行的进度,而不至于懵逼在那里,用户不会觉得程序死了还是干嘛了. 等待进度条有好几种办法,比如直接叫美工做好gif图,用QLabel配合QMovie来加载gif图片,这种方法最简单最省事,或者做好多张进度条的图片,采用定时贴图来实现,这些办法省事归省事,就是还不够灵活,写死了,比如有时候需要更换颜色或者换一种展示形式,又需要美工重新做图了,折磨的要死.当时在写这个等待进度条的时候,就有考虑到集成多…
一.前言 上一篇文章写的广告轮播控件,采用的传统widget堆积设置样式表做的,这次必须要用到更高级的QPainter来绘制了,这个才是最高效的办法,本控件参考雨田哥的轮播控件,经过大规模的改造而成,相比于原来的广告轮播控件,本控件可以说完爆他,按在地上使劲摩擦.除了可以设置图片路径集合以外,还可以设置对应的提示信息,这个在众多的web轮播图片效果中最常见,比如新闻的标题等,可以更直观的显示当前图片,而且单击图片还可以支持跳转,指示器的位置也能设置左边+中间+右边,指示器的样式更加增加到椭圆条状…
一.前言 广告轮播这个控件做的比较早,是很早以前定制一个电信客户端时候用到的,该客户端需要在首页展示轮播预先设定好的图片,图片的路径可以自由设定,然后轮播的间隔速度可以自由控制,同时该控件还需要提供两种指示器的风格,一种是迷你型的样式,一种是数字型的样式. 本控件很早就做好了,由于当时的QPainter功力不足,还不是很熟悉QPainter,采用的是效率比较低的直接用现有控件堆积而成,比如指示器采用的QLabel,用样式表来控制对应的形状,指示器所在的底部放一个widget,采用左右布局,然后右…
一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要内容: 菜单Menu的自定义样式: 右键菜单ContextMenu的自定义样式: 树控件TreeView的自定义样式,及右键菜单实现. 二.菜单Menu的自定义样式 自定义菜单样式的效果图: Menu和ContextMenu样式本身很简单,他们最主要的部分就是MenuItem,MenuItem中包含的内容比较多,…
一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要内容: ProcessBar自定义标准样式: ProcessBar自定义环形进度样式: 二.ProcessBar标准样式 效果图: ProcessBar的样式非常简单: <!--ProgressBar Style--> <Style TargetType="ProgressBar" x…
AnyCAD C++ SDK专为Qt框架增加了AnyPlatformQt.lib模块,在Qt中使用AnyCAD三维建模控件变得十分简单. 下载 Qt高速下载:http://pan.baidu.com/s/1bng1kwJ AnyCAD C++ SDK高速下载:http://pan.baidu.com/s/1qWFS1tE QtCreator配置 假如AnyCAD C++ SDK目录为 ${AnySDK} 设置include路径: INCLUDEPATH +=  ${AnySDK}/inc 设置l…
自定义控件之调整按钮中子控件(图片和文字)的位置 其实还有一种是在storyBoard中实现的,只需要设置对应空间的左右间距: 这里实现前面两种自定义的方式 一:imageRectForContentRect/titleRectForContentRect 自定义一个按钮控件在系统自带的位置设置方法中实现对应子控件位置调整 /** * 设置内部图标的frame */ - (CGRect)imageRectForContentRect:(CGRect)contentRect { CGFloat i…
用户控件,WPF中是继承自UserControl的控件,我们可以在里面融合我们的业务逻辑. 示例:(一个厌恶选择的用户控件) 后端: using iMicClassBase; using iMicClassBase.BaseControl; using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.W…
扩展控件,顾名思义就是对已有的控件进行扩展,一般继承于已有的原生控件,不排除继承于自定义的控件,不过这样做意义不大,因为既然都自定义了,为什么不一步到位呢,有些不同的需求也可以通过此来完成,不过类似于类继承了.扩展控件本质也是类的继承.下面我们通过两个例子说明 一.自定义MButton 控件外观控制的属性,如圆角.鼠标悬浮前景色背景色.是否开启动画(鼠标悬停时小图标转一圈,移开又转回去).鼠标按下颜色等: 字体图标相关属性,如字符值.字体图标大小.字体图标间距等. 首先重写要修改的属性和添加要扩…
1.确定控件应该继承的基类 从表面上看,目前WPF自带常用控件中,没有一个是接近这个表盘控件的,但将该控件拆分就能够发现,该控件的每个子部分都是在WPF中存在的,因此我们需要将各个子控件组合才能形成这个表盘控件,因此我们直接定义一个Dashboard类,继承自Control类. 2.设置Dashboard的样式 <Style TargetType="{x:Type local:Dashboard}"> <Setter Property="BorderBrus…
抽空将自定义控件的主界面全部重写了一遍,采用左侧树状节点导航,看起来更精美高大上一点,后期准备单独做个工具专用每个控件的属性设计,其实qt自带的designer就具备这些功能,于是从qt4的源码中抽取出来,总共才1MB不到,不得不佩服Qt公司的程序员,写的很厉害.特意将自定义控件作为插件封装到了designer中,打开designer就从左侧控件栏中可以看到自定义控件.自定义控件近期会开放出动态库及头文件免费使用. 设计师designer完整源码(仅限Qt4):https://pan.baidu…
最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 一.目标样式 我们要实现上图中的效果,需要如下的操作: 1.从工具栏上的"Smobiler Components"拖动一个GaugeView控件到窗体界面上 2.修改GaugeView控件的属性 a.AxisLines属性 设置仪表盘轴线段,打开集合编辑器,并点击"添加",Color属性(仪表盘轴线段的颜色)和SplitNumRate属性(仪表盘轴线段占…
一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要内容: DataGrid自定义样式: ListView自定义样式: 二.DataGrid自定义样式 DataGrid是常用的数据列表显示控件,先看看实现的效果(动态图,有点大): DataGrid控件样式结构包括以下几个部分: 列头header样式 调整列头宽度的列分割线样式 行样式 行头调整高度样式 行头部样式…
#include "mainwindow.h" #include <QApplication> #include <QHBoxLayout> #include <QSlider> #include <QSpinBox> int main(int argc, char *argv[]) { QApplication a(argc, argv);//入口 QWidget *window = new QWidget;//创建一个窗体 windo…
一.新建一个窗体 用qt designer 新建一个QWidget窗体, 在窗体中右键 选择布局, 发现布局是选择不了的,这个是因为窗体里面没有添加控件, 任意添加空间后便可选择 右键-- 布局-- 水平布局/垂直布局 等 二. 添加控件 我们添加一个group box 控件, 然后 右键 选择 布局 -- 垂直布局 在添加一个horizontalLayout, 再给horizontalLayout里面添加两个button按钮 向group box 里面添加一个label 和 botton 然后…
FastReport是一款优秀的报表控件,由俄罗斯开发,国内有代理商.Qt环境下可实现报表功能的还有一款叫NCReport,也是收费控件,比较来比较去还是觉得前者功能强点.网上讲解此控件在Qt中使用的文章比较少,故在此做下记录: 概述: 1. FastReport版本有VCL, .NET, COM/ActiveX, Mono等等,其中Qt下使用只能使用COM/ActiveX版本.2. 网上破解版有3.2,4.5和最新的4.9(2014年),3.2这个版本貌似功能不全,Qt下老报错:4.9版本可以…
背景 最近要做一个轮播图的效果,网上看了几篇文章,基本上都能找到实现,效果还挺不错,但是在写的时候感觉每次都要单独去重新在Activity里写一堆代码.于是自己封装了一下.本篇轮播图实现原理原文出处:循环广告位组件的实现,这里只是做了下封装成一个控件,不必每次重复写代码了. 效果图 实现分析 轮播图的功能就是实现左右滑动的广告.图片信息展示,那我们就用ViewPager来实现,由于考虑到用户体验,我们还需要在下面加一个指示器来标示滑动到了第几张轮播图.指示器我们可以用一个线性布局来根据要展示的轮…
Qt中的信号槽系统是不同类中间传递数据的神器,如果连接父子空间之间的信号槽很重要,在父类中实例化子类的时候一定要注意将父类连上,不然信号槽无法使用,比如若子类是个对话框Dialog类,一定不要忘了加this QtClass *qc = new QtClass(this); qc->exec(); 然后如果需要连接到父控件的槽函数,只需在子类的构造函数中加一句: connect(this, SIGNAL(signal()), parentWidget(), SLOT(slot()));…
从 Qt 设计师界面可以看到常用的 Qt 文本编辑和浏览控件,包括四个: 其中单行编辑控件 QLineEdit 和 普通文本编辑控件 QPlainTextEdit 都是针对最普通的 C++ 字符串编辑和显示,默认都是白底黑字,没有彩色字体.QLineEdit 按照名字,就是只接受单行普通文本输入 QPlainTextEdit 可以接收多行普通文本输入. 丰富文本编辑控件 QTextEdit 是升级版的编辑控件,支持 HTML 网页的丰富文本编辑,当然也可以利用它编辑普通文本. 丰富文本浏览控件…
一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等. 本文主要内容: 菜单Menu的自定义样式: 右键菜单ContextMenu的自定义样式: 树控件TreeView的自定义样式,及右键菜单实现. 二.菜单Menu的自定义样式 自定义菜单样式的效果图: Menu和ContextMenu样式本身很简单,他们最主要的部分就是MenuItem,MenuItem中包含的内容比较多,如图标.选中状态.二级菜单.二级菜单的指针.快捷键等. 使用了字…
一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等. 本文主要内容: DataGrid自定义样式: ListView自定义样式: 二.DataGrid自定义样式 DataGrid是常用的数据列表显示控件,先看看实现的效果(动态图,有点大): DataGrid控件样式结构包括以下几个部分: 列头header样式 调整列头宽度的列分割线样式 行样式 行头调整高度样式 行头部样式 单元格样式 在本文的样式定义中,默认开启了DataGrid的虚…
     表情选择控件在聊天应用中常常要用到,做起来尽管不复杂可是非常繁琐.特别是有些图标须要按顺序排列.每次重做必定是非常费时.所以我将聊天表情选择控件封装成一个独立的类QFaceSelectWidget.方便直接应用到自己的项目中. 先来看看效果图: 測试程序是一个对话框,里面放有一个QPushButton和一个QLabel,水平布局.点击button弹出"表情选择框",选择表情后"表情选择框"关闭,QLabel中显示刚才选择的表情."表情选择框&qu…
1.http://www.cnblogs.com/hjxzjp/p/7823292.html   优先考虑从现有的控件中进行派生,并添加所需要的功能. 在解决方案资源管理器窗口中设置:引用---->添加引用,勾选System.Design 重新生成项目,在工具箱中找到自定义控件,且可以修改自定义控件的属性. 从原有控件类派生自定义控件类时,主要考虑重写原控件的部分函数(跟绘图相关的OnPaint肯定是要重写的). 2.https://www.cnblogs.com/rainbow70626/p/…
相信从事HMI和自动化开发专业的小伙伴在使用工业仪表盘和图表控件时,都很熟悉怎么安装和操作Iocomp产品(毕竟它功能太强大了,基本人手一份的节奏),但是小编想肯定还是有很多和小编一样的入门的伙伴在安装该控件时会遇到一些常见问题.所以小编梳理了常见问题之后就分享出来,希望对大家有所帮助. 问题一:Iocomp Components Service Pack安装程序问题 答:如果在安装期间运行任何有关VB NT服务程序或Microsoft Outlook应用程序,安装程序有时会无法启动.这时候如果…
一.概要 近期项目当中需要用到飞机控制仪表盘的姿态仪,一开始去各大网站搜索解决方案要么就是winfrom要么就是很老的代码根本不能运行更甚者是居然有的还要下载积分. 只能自己手动从0开始写一个控件.这里免费把源代码分享给大家.飞行姿态仪控件只是表面上看起来高大上,其实内部原理很简单就是需要一些简单的算法.源代码将放在文章末尾的QQ群里. 二.实现思路 三.运行效果 希望大家多多支持.不胜感激. E-Mail:zhuzhen723723@outlook.com QQ: 580749909(个人群)…
假设我们新建立一个用户自定义控件,由一个lable1和pictureBox1组成 此时我们在外部调用该控件,然后想动态改变lable1的值,我们该怎么办? 假设实例化的用户控件名为UserControl1,以下方法可以访问子控件的属性 直接把lable暴露出来.在自定义控件的窗体编辑器中,选择lable1,将它的Modifier属性设为Public.进入主窗体, 此时我们在调用就会发现UserControl1可以 . 出lable1控件…