QT 点击按钮改变输入框中文字显示(明文或密文)

今天刚好要做这个功能,但是发现网上的参考资料有点少。所以就写了这篇。

效果图如下:

 

在这之前先讲以下QLineEdit明文和密文的写法。

代码如下

      关于setEchoMode的几种用法
      //默认,输入什么即显示什么
      echoLineEdit->setEchoMode(QLineEdit::Normal);
      //密码,一般是用小黑点覆盖你所输入的字符
      echoLineEdit->setEchoMode(QLineEdit::Password);
      //编辑时输入字符显示输入内容,否则用小黑点代替
      echoLineEdit->setEchoMode(QLineEdit::PasswordEchoOnEdit);
      //任何输入都看不见(只是看不见,不是不能输入)
      echoLineEdit->setEchoMode(QLineEdit::NoEcho);

了解了QLineEdit的显示方式,在了解如何给按钮添加图片。

我之前写的会比较复杂

    searchBtn = new QPushButton();
    searchBtn->setFixedSize(QSize(40,40));//设置大小
    QIcon searchButton(":/image/searchLogo.jpg");//按钮设置图片
    searchBtn->setIcon(searchButton);
    searchBtn->setIconSize(QSize(35,35));//图片大小设置

后面发现更简单的方法

    loginPwdButton = new QPushButton(this);
    loginPwdButton -> setGeometry(355,60,40,40);//设置控件位置以及大小
    loginPwdButton->setIcon(QIcon(":/image/CloseeyeLogo.png"));//按钮设置图片
    loginPwdButton->setIconSize(QSize(35,35));//图片大小设置
    connect(loginPwdButton,SIGNAL(clicked(bool)),this,SLOT(on_pushButton_eyeSlot()));//点击登录时

然后定义信号槽

connect(loginPwdButton,SIGNAL(clicked(bool)),this,SLOT(on_pushButton_eyeSlot()));

写槽函数

/*****************************************************************
* 函数名称: editComplete()
* 功能描述: 按钮变换图片
* 参数说明: 无
* 返回值:   无
* 修改记录:
******************************************************************/
void Widget::on_pushButton_eyeSlot()
{
    //一开始Widget::numButton=0
    if(Widget::numButton %2 == 1)//如果按下按键的次数的余数为1 则闭上眼睛
    {
        loginPwdButton->setIcon(QIcon(":/image/CloseeyeLogo.png"));
        pwdEdit -> setEchoMode(QLineEdit::Password);//将其用密文显示
        ++Widget::numButton;
    }
    else if(Widget::numButton %2 == 0)//如果按下按键的次数的余数为0 则睁开眼睛
    {
        loginPwdButton->setIcon(QIcon(":/image/openEyeLogo.png"));
        pwdEdit -> setEchoMode(QLineEdit::Normal);//将其用明文显示
        ++Widget::numButton;
    }

}

以上就完成了。

热门文章

【老鸟进阶】deepfacelab训练参数详解

出处:deepfacelab中文论坛 http://dfldata.xyz/forum.php?modviewthread&tid642&page1#pid9666 导言训练时有许多参数,对不懂机器学习的萌新来说简直就是天书本篇教程就带大家揭开训练时各参数的含义与效果,同时给出建议数值我尽量用…

深度学习系列10:人脸识别概述

本文参考https://zhuanlan.zhihu.com/p/76513217 1. 基础 这是一篇review的文章。下图是基本流程: 1.1 数据集 公开数据集的变迁如下: 1.2 前处理 人脸处理的变迁如下: 1.3 网络架构 主架构的变迁如下图: 1.4 目标函…

看这个视频发现:AI在造假的路上,越来越炉火纯青了!

本文转载自机器之心。编辑:杜伟、魔王好莱坞影星「阿汤哥」又一次成为深度造假视频的主角。近年来,人们对深度造假(deepfaking)既着迷又担忧。这项技术可以替换视频中的人脸,并利用机器学习使最终生成效果看起来非常逼…

6月份最热门的机器学习开源项目Top10

编译 | Debra编辑 | NatalieAI 前线导读: 燥热的 6 月天已经结束了,本月机器学习领域又有哪些开源项目值得一看呢?Mybridge AI 从将近 250 个机器学习开源项目中评选出排名 Top10 的项目。这是他们对在此期间新发布或进行重大发布的项目进行比…

安卓Android开发——scrollview嵌套高德地图滑动出现黑影

高德地图使用——各种黑影黑屏 最近项目中用到了高德地图,在开发过程中遇到编写一个页面时一个ScrollView中包含一个map,会出现黑影,后期发现在一下三种场景下都会出现黑屏黑影 scrollview嵌套高德地图滑动 出现黑影 viewpager嵌套高德地图…

修改引导高级选项导致蓝屏

参考文档:https://jingyan.baidu.com/article/39810a238016fcb636fda624.html 新买了台式机,为了尽可能提高性能,在电源部分修改成高性能部分之后,又修改了引导高级选项中选择处理器个数最大,以及最大内存。 最后发现…

拜见罗宾逊一家

Meet The Robinsons 我没有选那个 因为那个会让我起疙瘩 Then I didnt choose that one because it was gonna give me pimples, 于是我挑了另外一个比较恐怖的 so I choosed another scary one 因为根据我多年参加 万圣节前夕的经验 because, for all those years that I w…

常用图像数据集大全(分类,跟踪,分割,检测等)

常用图像数据集大全(分类,跟踪,分割,检测等) 1.搜狗实验室数据集: http://www.sogou.com/labs/dl/p.html 互联网图片库来自sogou图片搜索所索引的部分数据。其中收集了包括人物、动物、建筑、机械、风景…

利用FFmpeg无损提取视频中源音频流

今天要从视频中扒一个谱出来,想把音频提取出来。有损提取方法很多了,利用格式工厂啊,视频编辑软件啊,开内录啊很多方法。但是我想要的是无损提取。 1. MediaCoder 首先尝试了MediaCoder中的“复制音频流”选项,但是怎…

FFMpeg无损合并视频的多种方法 python

方法二确实可行 方法1 我试着不行 需要的话自己试试把 python 的调用cmd命令是这么写的 resos.system("ifconfig"); 众所周知,从某些视频网站下载的视频是分段的。比如新浪视频每隔6分钟分段,俗称“6分钟诅咒”。 现在的任务是将这些视频片…

my favorites

清华大学开源软件镜像站 https://mirrors.tuna.tsinghua.edu.cn ITK/VTK ITK有用的网站: http://www.insight-journal.org 东灵: http://blog.csdn.net/www_doling_net Mesh generation http://staff.ustc.edu.cn/~lgliu/#Professionals DSP&#xff1a…

Android N默认锁屏壁纸的实现

从Android N开始,原生系统增加了锁屏壁纸开关: frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java /** If true, the lockscreen will show a distinct wallpaper */private static final boolean ENAB…

GC频繁抖动的主要原因

内存抖动 内存抖动是因为大量的对象被创建又在短时间内马上被释放,如循环中分配对象,很容易引起GC,特别是在较大的循环次数或者一个循环中分配较多的临时对象时。 瞬间产生大量的对象 瞬间产生大量的对象,即使对象不大&#xf…

Mcafee epo4.0安装布署及基本配置

这两天研究了一下epo4.0mcafee8.7i,发现这方面的资料还是比较少,尤其是中文的,所以把自己这几天的心得写出来,和大家分享一下,也请大家多多指教。本次测试使用的环境是Windows server 2003 enterprise Sp2 x32虚机一台…

mac禁用独立显卡的方法

mac笔记本用户为了省电提高续航等情况,怎么禁用独立显卡,只使用核显呢?今天小编给大家带来了mac禁用独立显卡的方法,感兴趣的快来跟小编看看吧! 可以使用mac自带的 pmset 电源管理命令,在终端输入以下命令…

有人问我:程序员要供祖师爷的话该供谁?

有人问我:程序员是不是都抽烟? 我想了半天我抽烟完全是因为医生,在我刚上大学的时候还不会吸烟,有一天嗓子特别疼,我就去医院检查,大夫检查之后对我说,没什么太大毛病,你少抽点烟就行…

在 Windows 用上 Linux GUI——GitHub 热点速览 v.21.17

作者:HelloGitHub-小鱼干超喜欢本周的 GitHub 热点,如果你是个 Windows 用户,但又不得不用 Linux GUI 软件,这次微软帮你解决烦恼,WSLg 能让你用上大量 Linux GUI 软件,Just for you。当然一样让人惊喜的还…

Hibernate part 8:一对多关联关系映射

数据库建表原则,在多的一方添加一个外键列,引用一的一方的主键,例如客户和订单,在订单表中增加客户编号作为外键 一对多,类对象之间的关系,在多的一方添加一个集合 class A {B b; // 一个A对应一个B } clas…

Java实现 蓝桥杯 算法训练 审美课

算法训练 审美课 时间限制:1.0s 内存限制:256.0MB 提交此题 问题描述   《审美的历程》课上有n位学生,帅老师展示了m幅画,其中有些是梵高的作品,另外的都出自五岁小朋友之手。老师请同学们分辨哪些画的作者是梵高&am…

原来“镀金”没有那么难

原标题:原来“镀金”没有那么难下面继续和大家分享韩国留学的优势吧! 三、韩国大学的教育质量 韩国的地方虽然远远小于中国,大学数量也仅有300多所,可这些学校在世界大学前一百中所占的排名和中国2000多所大学所占的名额相差无几。 韩国的大学更注重知识和实践相结合,就…

在职自考生如何快速拿下自考?

原标题:在职自考生如何快速拿下自考?因学历问题而在职场上处处受限,很多在职人士、在校学生都希望获得除本身从事行业、专业以外的其他专业技能。自考对于这部分人来说是一个不错的选择,为此小编特别整理了一些过来人的经验,希望能给在职考生一些帮助和指导。 因为自考在…

非全日制学历带来最直接的作用,考证!

原标题:非全日制学历带来最直接的作用,考证!工作竞争日渐残酷,优胜劣汰已经成了职场常态,通过成人高考、远程教育等拿到非全日制学历的同学,也可以再考一些证书,毕竟,技多不压身。 可以尝试完成的...... 01、教师资格证 02、会计 03、建造师 04、建筑师 05、工程…

别瞎考证,这些证书含金量或会降低!

原标题:别瞎考证,这些证书含金量或会降低!列入《国家职业资格目录》的证书才是被社会认可的、具有含金量和升值空间。 准备考证的老铁,一定要先搞懂下面两个问题: 问题1 20年7月人社部清退了一批职业资格,具体是哪些? 问题2 政策文件中频频出现的『职业资格』、『从业…

“不进则退”,想提高学历,成考是一种有效的途径

原标题:“不进则退”,想提高学历,成考是一种有效的途径成人高考的重要性,你了解多少? “不进则退”,想提高学历,成考是一种有效的途径! 有一句话叫做“对于世界,我微不足道,但对于我自己,我就是全部”,是的,我们主宰着自己的一切。在如今这个蒸蒸日上的社会,“…

成人高考多久毕业?成人高考能提前毕业吗?

原标题:成人高考多久毕业?成人高考能提前毕业吗?大部分参加成人高考的考生,主要目标就是想要拿到一个高学历,有的成人高考本科的还是为了学位证书。那么成人高考需要多久可以拿到毕业证。 成人高考多久毕业? 成考招生层次分高中起点升本科(简称高起本)、高中起点升专科…

成人高考和自考哪个拿证简单?如何选择?

原标题:成人高考和自考哪个拿证简单?如何选择?每年总是很多同学纠结成人高考和自考,而且想要快速拿证实现学历自由,那么今天专门给大家讲解一下,根据同学们比较在意的几个方面内容,做了一个表格给大家看看: 两种学历提升形式不是所有人都合适的,成人高考是适合想轻松拿…

解惑帖 天津怎么落户?天津落户怎么办理?看完就明白了

原标题:解惑帖 天津怎么落户?天津落户怎么办理?看完就明白了解惑帖 天津怎么落户?天津落户怎么办理? 看完就明白了 天津怎么落户?天津落户怎么办理?很多人有这样的疑问,那今天我就来帮助大家解 惑。 天津怎么落户? 这就需要先来讲讲现在天津现在的落户政策,目前天…

研讨 | 专科、本科、研究生不同学历的待遇差距有多大?

原标题:研讨 | 专科、本科、研究生不同学历的待遇差距有多大?相信前一段时间因为“华为事件”,任正非接受央视采访也备受关注!其中任老在访谈中,呼吁要重视基础教育。他认为,未来二三十年,人类的社会将有翻天覆地的变化,最大的进步来源于教育和科学的进步。国家首先要重…

福建2021年网络教育入学测试方式,满足哪些条件可以免考?

原标题:福建2021年网络教育入学测试方式,满足哪些条件可以免考?目前网络教育入学测试一般分为上机考试和笔试两种,但个别院校还增加了面试。具体详见各高校招生简章或咨询当地学习中心。 机考就是在计算机上答题,笔试是纸质试题。 入学考试科目 高升专层次多为:语文、数…

2018深圳积分入户哪些人需要调档案?

原标题:2018深圳积分入户哪些人需要调档案?很多人都搞不明白,2018年办理深户手续跟档案材料有什么关系?小思给大家简单介绍一下哪些情况下需要调档案。 首先大家在办理深户手续之前,需要注意的一个问题是自己的户口本上有没有曾用名。如果你是全日制大专本科学历的话,户…

学历提升为什么要选择远程教育?

原标题:学历提升为什么要选择远程教育? 就业市场对人才学历要求的提高,让很多成年人萌发了提升学历的念头。目前,成人提升学历最主流的三种方式就是成人高考,自考、远程教育。从这三种方式的招生来看,选择远程教育的人最多。成人提升学历选择远程教育是最佳途径。 成人提…

angular2 *ngIf的用法

<div *ngIf"show; then thenBlock; else elseBlock">this is ignored</div><ng-template #thenBlock>如果show的值是真,则显示这段</ng-template><ng-template #elseBlock>如果show的值是假,则显示这段</ng-template> 更多详细…

Angular4项目解决跨域问题

跨域跨域:浏览器对于javascript的同源策略的限制,例如a.cn下面的js不能调用b.cn中的js,对象或数据(因为a.cn和b.cn是不同域),所以跨域就出现了.上面提到的,同域的概念又是什么呢??? 简单的解释就是相同域名,端口相同,协议相同同源策略:请求的url地址,必须与浏览器上的url地址…

Angular4 导出Excel文件

*.ts 把json数据导出到Excel文件 import * as FileSaver from file-saver; import * as XLSX from xlsx;exportAsExcelFile() {let json [{"姓名": "***", "工號": "***", "英文名": "***", "部门": …

angular 组件化

在做sass产品页面的时候&#xff0c;往往每个页面的header和footer都是一样的&#xff0c;还有最近我做的页面&#xff0c;类似datetimepicker这种组件&#xff0c;其实都是可以复用的代码&#xff0c;所以如果能把这些公用的UI组件提取出来&#xff0c;对于维护就会方便很多啦…

angular 路由 常用事件

angular 当路由页面加载完毕后执行 指定JS 直接在app.js启用viewContentLoaded 方法即可 myApp.run([$rootScope, $window, $location, $route, function ($rootScope, $window, $location, $route) {$rootScope.$on($viewContentLoaded, viewContentLoaded);function viewCo…

Angular ng 前缀指令

本教程用到的 AngularJS 指令 : 指令 描述 ng-app 定义应用程序的根元素。 ng-bind 绑定 HTML 元素到应用程序数据 ng-bind-html 绑定 HTML 元素的 innerHTML 到应用程序数据&#xff0c;并移除 HTML 字符串中危险字符 ng-bind-template 规定要使用模板替换的文本内容 ng-blur …

Angular ng-change 不能触发的坑

首先&#xff0c;ng-change 指令需要搭配 ng-model 指令使用。 重要的是&#xff1a;ng-change 事件只针对输入框值的真实修改&#xff0c;而不是通过 JavaScript 来修改。 白话说就是&#xff08;以input为例&#xff09;&#xff1a;光标在文本框内&#xff0c;用键盘修改文本…

angular.module()

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>angular.module</title></head><body ng-app"moduleExample"><h1>angular.module</h1><p><span>描述&#xff1a;<…

Angular实现路由的嵌套 父子路由 从浅入深

文章目录1. 配置路由2. 路由重定向3. 路由选中4. 路由的嵌套1. 配置路由 a.首先在创建angular项目时创建带路由的项目&#xff1a; b.带路由项目的差别&#xff1a; c.在app.component.html文件中多了可以动态插入路由的标签&#xff1a; d.下面先创建三个组件&#xff0c;…

angular+bootstrap+spring boot实现分页

需要用到的js angular.js&#xff08;用angular.min.js会导致分页控件不显示&#xff09; ui-bootstrap-tpls.min.js angular-animate.js 需要用到的css bootstrap.min.css 由于本项目使用了路由&#xff0c;所以讲js以及css文件的应用都放在一个主html&#xff0c;请同学…

AngularJs分页组件demo

一个后台中总需要一款分页&#xff0c;那我为了自己方便使用&#xff0c;实现如下效果 我把这个组件命名为tm.pagination,原因是因为起名真的太难起了。而且我网名也叫天名, TM就这样了吧。github地址https://github.com/miaoyaoyao/AngularJs-UI 分页在线查看 点击预览 http:/…