在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);
    }
}

运行效果:

相关推荐
阿kun要赚马内2 小时前
C++中的Windows API双缓冲技术
c++
WBluuue8 小时前
Codeforces 1078 Div2(ABCDEF1)
c++·算法
geovindu8 小时前
python: Memento Pattern
开发语言·python·设计模式·备忘录模式
学无止境_永不停歇8 小时前
十、C++多态
开发语言·c++
寻星探路8 小时前
【JVM 终极通关指南】万字长文从底层到实战全维度深度拆解 Java 虚拟机
java·开发语言·jvm·人工智能·python·算法·ai
Aric_Jones8 小时前
JavaScript 从入门到精通:完整语法指南
开发语言·javascript·ecmascript
岱宗夫up9 小时前
FastAPI入门(上篇):快速构建高性能Python Web API
开发语言·前端·python·fastapi
老歌老听老掉牙9 小时前
QT开发踩坑记:按钮点击一次却触发两次?深入解析信号槽自动连接机制
c++·qt
Dxy12393102169 小时前
中文乱码恢复方案
开发语言·python
橘色的喵9 小时前
现代 C++17 相比 C 的不可替代优势
c语言·c++·现代c++·c++17