Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍QPushButton按钮组件的常用方法及灵活运用。
对于现在做前端开发人员来说,FlatUI肯定不陌生,最近几年扁平化的设计越来越流行,大概由于现在PC端和移动端的设备的分辨率越来越高,扁平化反而看起来更让人愉悦,而通过渐变色产生的质感色彩反而没有扁平化来得亲切。
QSS即Qt样式表,是用来自定义控件外观的一种机制,QSS大量参考了Css的内容,但QSS的功能要比Css弱得多,体现在选择器少,可以使用的QSS属性也少,而且并不是所有的属性都可以应用在PyQt的控件上,QSS使页面美化跟代码层分开,利于维护
很多人都吐槽,使用 Tkinter、PyQt5等工具制作出来的图形界面程序太丑了。既然觉得它丑,我们来想想,它为什么会那么丑。
很多人应该和我一样,想做界面才接触的Qt,结果就是做不出来华丽的界面,想给控件上个色?不会,百度半天,好不容易给控件添加了背景色,下一个控件又不会了,别急,这次福利来了,我将平时用到的样式表做了一个总结,并做了一个一键生成,调节数据就可以实时显示,里面包括了Label,LineEdit,PushButton,CheckBox,RadioButton,ScrollBar,Slider,Progressbar,Tabwidget,ToolBox,TabWidget控件的自定义。代码很简单,就是重复写槽函数,但其对于新手的学习很有帮助,避免了盲目,大量的通过百度数据拼接样式表。一来方便学习,所以参数都写在左下角,方便了解到使用了什么生成了什么,二来不用重复造轮子,调节后,可直接将左下角生成的QSS代码复制到qt的样式表里面即可显示效果。可能有一些人会说这是一种偷懒,让人逐渐不想学习,只能说智者见智仁者见仁吧。
在Qt中经常需要使用样式,为了降低耦合性(与逻辑代码分离),我们通常会定义一个QSS文件,然后编写各种控件(QLabel,QLIneEdit,QPushButton等)的样式,最后使用QApplication或QMainWindow来加载样式,这样就可以让整个应用程序共享一种样式了
最近在写qt加载样式表的博文,发现qss文件要么打开失败,要么加载成功,但是不生效,经过一番搜索也是算解决了这个问题。
QSS子控件实际上也是一种选择器,其应用在一些复合控件上,典型的如QComboBox,该控件的外观是,有一个矩形的外边框,右边有一个下拉箭头,点击之后会弹出下拉列表,例如:
导读 正如web前端开发中CSS(Cascade Style Sheet)的作用一样,Qt开发中也可以使用修改版的QSS将逻辑业务和用户界面进行隔离。这样,美工设计人员和逻辑实现者可以各司其职而不受干扰。更重要的是,由于界面和逻辑处理是分离的,低耦合性使得代码重构的工作量可以减少到最小。QSS和CSS的语法几乎一致,除了Qt自身增加的一些属性之外,其余的属性都可以在CSS2或CSS3中找到对应的属性。因此,如果曾经有过CSS的使用经验,那么QSS的使用将游刃有余。关于QSS的使用实践,打算撰写一系
Qt中的动态换肤技术是非常一流的,直接调用qApp->setStyleSheet(qss);就可以对整个应用程序进行换肤,如果样式表内容不多,或者对应的贴图不对,效率还是蛮好的,不过据说有些人写了几千行的样式表,加载起来能够明显感觉卡顿,毕竟此时全部刷新加载重绘,是非常耗CPU的,这种情况就需要避免尽量统一样式表,能合并的就合并,当然,在性能比较好的电脑上,这个基本上遇不到的,也感觉不到的,好比现在的手机相比于十年前的手机,现在动不动都6GB内存了,比起以前256MB内存的时候,不知道爽了多少倍,软件上已经优化不了的事情,靠硬件升级到来的优化体验还是非常棒的。
在做各种各样的项目中,难免遇到需要设定自己界面风格样式的时候,而Qt提供的qss就是牛逼的为了实现定制各种各样的皮肤的,其实一个完美的UI界面,主要由两大块组成,一个是颜色搭配,一个是布局,这两个缺一不可,一般是交给专业的美工妹妹来做,大部分程序员审美不是很好,所以在没有美工妹妹的时候,需要去一些专业的UI界面网站寻找灵感。关于颜色搭配和布局这两点,很多人有个误区,以为只需要qss放进去就行,其实不行的,如果按钮文本框放的难看,一样看起来也是碍眼,还需要慢慢调整各种人机交互的控件的位置才行。
这里每个页面也可以再嵌入菜单;这个只是实现了一个简单的菜单框架,这个菜单可以再改进添加上菜单键的翻页,菜单键太多,就两边加上箭头,用于把隐藏的按键显示出来;还可以把按键改为竖着排放的。
使用 Qt 默认的进度条样式是传统的效果,但是 Qt 提供了强大的 QSS 引擎,提供我们去设置丰富的控件样式,这次是为了模仿一个音量或者声音回馈效果的进度条样式,类似下面这张图片的效果:
导读 组合框是一个重要且应用广泛的组件,一般由两个子组件组成:文本下拉单部分和按钮部分。在许多既需要用户选择、又需要用户手动输入的应用场景下,组合框能够很好的满足我们的需求。如我们经常使用的
from PyQt5.QtWidgets import * import sys
最近在学习QT GUI,单纯使用C++硬编码的方式,直接是采用QWidget部件来做,而不是采用QT Designer做UI界面,也不是采用QML+Javascript。单纯使用C++硬编码的方式,缺点就是代码量大,优点是灵活。其中用到了类似于Web开发中的CSS的QT样式表QSS。
https://blog.csdn.net/u011125673/article/details/51753997
在桌面应用程序开发时,需要显示一些状态信息,例如客户端是否掉线,串口是否打开等,我们可以用一些标志显示给用户,例如如果QLabel显示绿色,表示连接成功,显示黑色表示失败。
大家中秋好。月饼圆,月亮圆,中秋团团圆圆。今天就分享些关于圆的东西(圆形按钮样式)。 主题效果 默认颜色 悬停颜色 按下颜色 红色 #f44336 #d5d5d5 #f2f2f2 蓝色 #008cba
❝该例子演示如何实现QListWidget窗口列表的动态「添加」和「删除」。❞ 📷 演示 一. 实现 小例子主要由MyListWidget和ItemWidget组成。 使用QListWidget的insertItem动态添加一项元素; 使用QListWidget的removeItemWidget动态删除一项元素; 使用QListWidget的setItemWidget设置指定的QWidget模板。 由于ItemWidget继承QWidget和QListWidgetItem,于是就有了以下操作: /* 添加一
void customContextMenuRequested(const QPoint &pos);
文件名称:"金果园1#(20180202182916)(20180202185154)_0.png" 文件路径:"D:/Build/bin/Win32/test+%1==/img" 路径和文件名称合并起来期望结果为:"D:/Build/bin/Win32/test+%1==/img/金果园1#(20180202182916)(20180202185154)_0.png"
前言 在上一篇中,我们基本上完成了主要功能的实现,剩下的一些导出、进程子模块信息等功能,留到后面再来慢慢实现。这一篇来讲述如何对主界面进行个性化的定制。Qt库提供的只是最基本的组件功能,使用
广告轮播这个控件做的比较早,是很早以前定制一个电信客户端时候用到的,该客户端需要在首页展示轮播预先设定好的图片,图片的路径可以自由设定,然后轮播的间隔速度可以自由控制,同时该控件还需要提供两种指示器的风格,一种是迷你型的样式,一种是数字型的样式。
最近,QQ的办公版本——TIM进行了一次更新升级。本次更新升级大幅修改了界面的样式,看起来更加的清爽、简洁和高效了。
http://www.cnblogs.com/xufeiyang/p/3314955.html
PyQt 提供了多种按钮类,用于创建各种类型的按钮。这一部分将打算介绍一下 PyQt 各种 Button 及相关类,并扩展 Button 的功能用法,让你能够打造自己的个性化 Button 。在下面,我先来介绍 PyQt 中常用的按钮类及其主要特点:
1. 通过使用QPalette调色板设置后置背景颜色。 #include <QWidget> #include <QPalette> #include <QApplication> int main(int argc, char **argv) { QApplication a(argc, argv); QWidget w; w.resize(100, 100); QPalette palette(w.palette()); palette.setColor(QPa
不多说直接上代码。 红色悬停样式表1 /* Red Button */ QPushButton#RedButton { border-radius: 8px; color: white
首先声明,本文并非原创,纯属搬运,内容来自一位叫做飞扬青春的大神的Gitee主页,主要是为了收藏下面介绍的100多个Qt开发经验。比如qss的ANSI编码、嵌套窗口中主窗口无法接收鼠标移动事件等,又比如我用qss设置窗口样式,但是项目每次重新构建以后,样式表就会不生效等问题,也花了自己不少时间去解决,所以在这里转发大神的经验,留作以后参考和逐条的研究,也分享给更多正在学习Qt或者正在使用Qt进行程序开发的朋友们。
记录一下前段时间工作中用到的东西,包括开发工具和一些简单的技巧吧。也许对于大家来说耳熟能详了。
这个IP地址输入框控件,估计写烂了,网上随便一搜索,保证一大堆,估计也是因为这个控件太容易了,非常适合新手练手,一般的思路都是用4个qlineedit控件拼起来,然后每个输入框设置正则表达式过滤只能输入3位数字,然后安装事件过滤器识别回车自动跳到下一个输入框。关于如何设置正则表达式过滤,这个可以搜索查到,本人也不大懂这个规则,貌似还有专门的书籍专门介绍正则表达式,可能这块非常强大。
导读 单选按钮(QRadioButton)和复选框(QCheckBox)是界面设计中的重要元素。单选按钮只允许用户在一组选项中选择一个,且当其中一个被选中的时候,按钮组中的其他单选按钮自动取消。复选框则可以让用户同时选中多个选项,这在多项选择的情况下非常有用。此外,复选框经过设置还具备第三种状态:未决状态(partially checked)。单选按钮和复选框应用广泛,在WEB表单、软件配置界面常常是不可或缺的元素。这篇博文主要讲述Qt中单选按钮和复选框如何通过样式表进行外观定制。 基本实现
曾几何时,我们都在黑框框下度过,我们受够了被黑框框支配的恐惧,想要跳出去,去看看外面,我们听够了类似于界面只是皮肤,背后的代码才是王道的话语,当你觉得黑框框已经满足不了你的时候,我觉得,你是时候做出一些改变了。如果你是学习C++的,我想qt可以作为你进入界面的一条选择,这篇文章,我们不讲函数,不讲类,总之就是不讲代码,我们来讲讲代码之外,聊一聊关于怎么布局,怎么用qt做出一个漂亮的界面❤️。 我在一篇讲布局博文下面看到这样一句评论:为什么非要布局,直接自己摆不是更好吗?我相信很多刚接触布局的同学,都有这种想法,当然,当初的我和你们拥有一样的想法,但是现在,这种想法我不敢再有。之所以会说出这句话,要么是刚接触界面,要么是随手点了进来,阿巴阿巴看完评论了一句。刚开始接触界面,布局确实不是那么重要,我们的软件(都称不上是软件,就是一个空壳子)一共也没几个组件,两个按钮?三个文本框?刚接触的时候,你是否考虑过软件大小随意变化的问题,你是否考虑过后期添加组件,随着我们的软件越来越庞大,让组件自动分配空间显的尤为重要。
在平时的写作过程中,经常需要将一些操作动作和效果图截图成gif格式,使得涵盖的信息更全面更生动,有时候可以将整个操作过程和运行效果录制成MP4,但是文件体积比较大,而且很多网站不便于上传,基本上都支持gif动图,一般一个5秒左右的gif,800*600分辨率,可以很好的控制在500KB内,这样就比较完美的支持各大网站上传动图。
QT版本: 5.12.6 操作系统: win10 64位 软件下载地址 完整源码下载:https://download.csdn.net/download/xiaolong1126626497/19354865
做完整个数据可视化大屏界面电子看板系统后,为了提升点逼格,需要提供好几套默认的风格样式以供选择,这样用户可以选择自己喜欢的配色方案来作为整个系统的颜色方案,去看了下市面上大部分的大屏电子看板系统,都是以蓝色为主,部分黑色,估计也许这就是大众的审美吧,那就在数据可视化大屏界面电子看板系统中也加入蓝色风格、深蓝色风格、黑色风格,三种,加上默认的紫色风格,共计内置4套风格选择,Qt的QSS是我见过的最牛逼的换肤控制样式界面颜色的东东,这个工具用好了,别提有多爽,直接qApp->setStyleSheet(qss);可以对整个应用程序换肤,如果自定义的控件定义了Q_PROPERTY的话,也会立即更改自定义控件的属性。
完整工程源码下载地址(包含APK文件): https://download.csdn.net/download/xiaolong1126626497/19051787
导读 行文本输入框在用于界面的文本输入,在WEB登录表单中应用广泛。一般行文本编辑框可定制性较高,既可以当作密码输入框,又可以作为文本过滤器。QLineEdit本身使用方法也很简单,无需过多的设置就能进行使用。于是这篇博文主要讲解如何对行文本编辑框QLineEdit进行定制。 基本定制 为了简化工作,还是如同前面所说的,直接用Qt Designer拖一个QLineEdit进行编辑。代码部分不太多: ui.lineEdit->setPlaceholderText(QStringLite
磁盘容量统计控件,说白了,就是用来统计本地盘符占用的容量,包括但不限于已用空间、剩余空间、总大小、已用百分比等,其中对应的百分比采用进度条显示,该进度条的前景色和背景色及文字颜色可以设置,在整体换肤的时候就需要用到。
本文介绍利用QListWidget和QSS样式表制作的一个水平滑动列表的示例。 实现 基于QListWidget实现 QListWidget *view = new QListWidget; 设置
前两次和大家分享了Qml绘制仪表盘、Qt自定义控件绘制仪表盘,我是更倾向使用Qml这种方式的。自定义控件使用到了定时器,如果有多个控件的话,那岂不是要使用很多定时器?还有就是对于界面前端本身不是要花特别多精力的地方,掌握通用的几种方法就好。
家用无线路由器作为家庭里不可或缺的网络设备,在给普通人带来极大便利的同时,也给处于互联网时代的我们带来了很多安全隐患,本文将针对普通家用无线路由器的常见攻击过程进行拆解并提出相应的防御建议,希望对大家有所帮助。 一、盗取无线密码 针对无线路由器最常见的攻击方式就是盗取无线密码,常见无线路由器的无线加密方式为WEP和WPA/WP2,通过无线路由配置的加密方式采取不同的攻击手法,再运用一些特殊的技巧,就可以轻易得到无线路由器的无线密码。 下图为常见的无线路由加密方
完整工程源码下载地址(包含APK文件): https://download.csdn.net/download/xiaolong1126626497/19051696
""" import sys from PyQt5.QtWidgets import QMainWindow, QApplication, QVBoxLayout, QPushButton
当tab个数大于一定个数时,会出现如下图左侧白线所示,这个是Qt自带的,作用是点击回到第一个tab
一般来说,肿瘤体细胞突变的分析都要求需要肿瘤与正常配对样本,采用如 MuTect2、MuSE、Varscan2、SomaticSniper、Strelka2 之类的工具来 call 体细胞突变。 对于得到的体细胞突变位点,以 vcf 文件的形式保存,需要进一步过滤,突变过滤主要有以下几种策略:
领取专属 10元无门槛券
手把手带您无忧上云