在Qt中通过控制按钮实现登录界面密码与明码的转换

创建控件:

首先,在Qt设计师界面界面上创建QLineEdit类文本框,用于输入密码,并且实现密码与明码相互转化。

设置初始状态:

默认情况下,输入密码的文本框应该是可见的并允许用户输入。

添加切换按钮:

在界面上添加一个按钮,用于触发切换操作。这个按钮可以是一个简单的开关按钮,比如一个复选框或者一个切换图标。

编写切换逻辑:

当用户点击切换按钮时,触发一个事件或函数,该事件或函数会检查当前显示的是密码还是明码,然后切换到另一个状态。

更新显示内容:

根据当前的显示状态,点击按钮更新显示密码的文本框的内容。如果显示的是密码,点击按钮则将其转换为明码;如果显示的是明码,点击按钮则将其转换为密码。

具体代码:

cpp 复制代码
void MainWindow::on_pushButton_clicked(bool checked)
{
   
       //需要在相应的.h文件中加入int mark=1;

    mark++;
    if(mark%2==0){
        ui->pushButton->setIcon(QIcon(":/new/prefix2/image/mi.png"));
        ui->key->setEchoMode(QLineEdit::Normal);
    }
    else{
        ui->pushButton->setIcon(QIcon(":/new/prefix2/image/ma.png"));
        ui->key->setEchoMode(QLineEdit::Password);
    }
}

运行效果:

相关推荐
小二·1 分钟前
Go 语言系统编程与云原生开发实战(第20篇)
开发语言·云原生·golang
女王大人万岁1 分钟前
Golang实战Eclipse Paho MQTT库:MQTT通信全解析
服务器·开发语言·后端·golang
无限进步_1 分钟前
138. 随机链表的复制 - 题解与详细分析
c语言·开发语言·数据结构·算法·链表·github·visual studio
charlie1145141913 分钟前
嵌入式C++教程——Lambda捕获与性能影响
开发语言·c++·笔记·嵌入式·现代c++·工程实践
codeejun5 分钟前
每日一Go-24、Go语言实战-综合项目:规划与搭建
开发语言·后端·golang
weiabc6 分钟前
cout << fixed << setprecision(2) << v; fixed 为什么不用括号,它是函数吗
开发语言·c++·算法
昱宸星光7 分钟前
spring cloud gateway内置路由断言工厂
java·开发语言·前端
m0_531237178 分钟前
C语言-内存函数
c语言·开发语言·算法
迷之程序员8 分钟前
llama-cpp-python用法,模型加载gpu踩坑全记录
开发语言·python·llama
yongui478349 分钟前
基于C#实现视频文件解封装与媒体流读取方案
开发语言·c#·媒体