首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Qt音视频开发23-通用视频控件

在之前做的视频监控系统中,根据不同的用户需要,做了好多种视频监控内核,有ffmpeg内核的,有vlc内核的,有mpv内核的,还有海康sdk内核的,为了做成通用的功能,不同内核很方便的切换,比如pro直接改一个DEFINE的变量名,所以需要将各种内核的使用方法做成一样的接口,这样看起来就很整齐,所以后面特意提炼了一个通用的视频控件,该控件没有具体的视频播放控制功能,需要根据不同的内核去调用具体的方法实现,后面还需要增加大华sdk或者其他第三方厂家的协议的时候,直接套用这个通用视频控件即可,以后增加新的监控内核,可以省下很多工作量,基本上只需要做内核解析就行,其余通用接口和绘制图像直接交给通用视频控件就行。

07

qt 如何设计好布局和漂亮的界面。

​       曾几何时,我们都在黑框框下度过,我们受够了被黑框框支配的恐惧,想要跳出去,去看看外面,我们听够了类似于界面只是皮肤,背后的代码才是王道的话语,当你觉得黑框框已经满足不了你的时候,我觉得,你是时候做出一些改变了。如果你是学习C++的,我想qt可以作为你进入界面的一条选择,这篇文章,我们不讲函数,不讲类,总之就是不讲代码,我们来讲讲代码之外,聊一聊关于怎么布局,怎么用qt做出一个漂亮的界面❤️。 ​       我在一篇讲布局博文下面看到这样一句评论:为什么非要布局,直接自己摆不是更好吗?我相信很多刚接触布局的同学,都有这种想法,当然,当初的我和你们拥有一样的想法,但是现在,这种想法我不敢再有。之所以会说出这句话,要么是刚接触界面,要么是随手点了进来,阿巴阿巴看完评论了一句。刚开始接触界面,布局确实不是那么重要,我们的软件(都称不上是软件,就是一个空壳子)一共也没几个组件,两个按钮?三个文本框?刚接触的时候,你是否考虑过软件大小随意变化的问题,你是否考虑过后期添加组件,随着我们的软件越来越庞大,让组件自动分配空间显的尤为重要。

04

Qt编写自定义控件26-平铺背景控件

平铺背景控件,主要的应用场景是作为画布出现,黑白相间的背景图,然后上面可以放置图片图形等,使得看起来更美观,比如PS软件新建图层以后的背景,FireWorks软件新建画布以后的透明背景,ICO制作软件新建画布以后的背景,都会采用一个黑白相间的背景。尽管本人用QPainter很多年,后面在翻阅QPainter自带的函数中才发现居然QPainter自带了这个绘制平铺背景的函数,擦,他么叫drawTiledPixmap,Qt不愧是跨平台GUI开发中的佼佼者,这些东西居然都考虑到了,说到考虑的周到,Qt中连size和count和length都完美的封装了,适合不同人群的使用习惯,这个考虑也是非常周到的。drawTiledPixmap就两个参数,第一个参数是要绘制的区域,第二个参数是要绘制的图片,图片不足会自动拷贝填充,所以如果提供的是两个交替颜色的背景图片,就会依次绘制形成平铺背景的效果,为了使得颜色可以控制,本控件增加了交替颜色的设置,可以自行传入两种颜色作为交替颜色,在程序内部自动生成要绘制的图片。

02

CSS3 基础知识[转载minsong的博客]

CSS3 基础知识 1.边框     1.1 圆角  border-radius:5px 0 0 5px;     1.2 阴影  box-shadow:2px 3px 4px 5px rgba(0,0,0,0.5);(水平、垂直、模糊、扩展)              box-shadow:inset 1px 2px 3px 4px #fff;(inset 内阴影)     1.3 边框图像 border-image 2.背景     2.1 background-size background-size:30px 30px;(背景图像宽度,背景图像高度)     2.2    background-image:linear-gradient(45deg,rgba(0,0,0,0.5) 25%,transparent 25%,transparent 50%,rgba(0,0,0,0.5) 50%,rgba(0,0,0,0.5) 75%,transparent 75%,transparent);(线性渐变,和background-size一起用)     2.3 background-attachment:(fixed|scroll|local)         fixed: 背景图像相对于窗体固定。         scroll: 背景图像相对于元素固定,也就是说当元素内容滚动时背景图像不会跟着滚动,因为背景图像总是要跟着元素本身。但会随元素的祖先元素或窗体一起滚动。         local: 背景图像相对于元素内容固定,也就是说当元素随元素滚动时背景图像也会跟着滚动,因为背景图像总是要跟着内容。     2.4 background-position:30px 20px;(横坐标,纵坐标;是图片在动)     2.5 background-origin:(padding-box|border-box|content-box)         padding-box: 从padding区域(含padding)开始显示背景图像。         border-box: 从border区域(含border)开始显示背景图像。         content-box: 从content区域开始显示背景图像。 3.文本     3.1 文字阴影 text-shadow:5px 5px 4px #000;(水平,垂直,模糊)     3.2 换行 word-wrap:(normal|break-word)             normal: 允许内容顶开或溢出指定的容器边界。             break-word: 内容将在边界内换行。如果需要,单词内部允许断行。             white-space:(normal|pre|nowrap|pre-wrap|pre-line)             normal: 默认处理方式。             pre: 用等宽字体显示预先格式化的文本,不合并文字间的空白距离,当文字超出边界时不换行。可查阅pre对象             nowrap: 强制在同一行内显示所有文本,直到文本结束或者遭遇br对象。             pre-wrap: 用等宽字体显示预先格式化的文本,不合并文字间的空白距离,当文字碰到边界时发生换行。             pre-line: 保持文本的换行,不保留文字间的空白距离,当文字碰到边界时发生换行。     3.3 省略号   width:200px;                 overflow:hidden;                 text-overflow:hidden;                 white-space:nowrap; 4.2D变换     4.1 旋转 transform:rotate(45deg);     4.2 移动 transform:translate(45px,45px);(水平,垂直)     4.3 缩放 transform:scale(2,2);(水平,垂直)     4.4 翻转 transform:skew(20deg,40deg);(沿X轴翻转,沿Y轴翻转)     4.5 将以上四个组合在一起 matrix(),需要六个参数,包含数学函数,允许您:旋转、缩放、移动以及倾斜元素。         暂放 5.过渡     5.1 transition : [ transition-property ] || [ transition-duration ] || [ transition-timing-function ] || [ transition-delay ]         [ transition-property ]: 检索或设

06

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券