Qt中QSettings的用法(记住密码和自动登录)
2015-12-21 15:36
232 查看
百度到的一些有关于QSettings 的用法,大多都大同小异,都是摘自Qt的帮助文档,而问题时钟没有解决。其实最有用的还是Qt的帮助文档,阅读了QSettings的帮助文档后,经过一些探索,终于将QSettings记录登录信息摸索出来;
大体结构是这样的,在保存信息是,建立文件,将信息保存在文件里面,在点击登录按钮时,保存信息,在下一次的重新构造时,将保存在文件里面的信息取出来并显示在界面上,这样我们就只管的实现了记住密码。直接上代码:
/*********************.h 文件*************************/
/**********************.cpp文件******************/
结果就是这样的:
大体结构是这样的,在保存信息是,建立文件,将信息保存在文件里面,在点击登录按钮时,保存信息,在下一次的重新构造时,将保存在文件里面的信息取出来并显示在界面上,这样我们就只管的实现了记住密码。直接上代码:
/*********************.h 文件*************************/
#include<QSettings>
QString username; QString passwd; QString AutoLogin; QString RemeberPasswd; bool remeberPasswd; bool autologin; void savecfg(); void loadcfg();
/**********************.cpp文件******************/
/**勾选记住密码,定义一个标志位*/
void Widget::on_Rem_Passwd_clicked()
{
if(ui->Rem_Passwd->isChecked())
{
remeberPasswd= true;
}
else
{
ui->PaswdEditr->clear();
remeberPasswd= false;
}
}
/**勾选自动登录,定义一个标志位*/
void Widget::on_Autoin_Log_clicked()
{
if(ui->Auto_Log->isChecked())
{
autologin= true;
}
else
{
autologin= false;
}
}
/**保存登录信息**/
void Widget::savecfg()
{
QSettingscfg("fzconfig.ini",QSettings::IniFormat);
username= ui->Accout->currentText();
passwd= ui->PasswdEdit->text();
S***E_CFG_VARIANT(username);
S***E_CFG_VARIANT(passwd);
S***E_CFG_VARIANT(autologin);
S***E_CFG_VARIANT(remeberPasswd);
cfg.sync();
}
/**初始化时显示登录信息**/
void Widget::loadcfg()
{
QSettingscfg("fzconfig.ini",QSettings::IniFormat);
username= LOAD_CFG_VARIANT(username).toString();
passwd= LOAD_CFG_VARIANT(passwd).toString();
AutoLogin= LOAD_CFG_VARIANT(autologin).toString();
RemeberPasswd= LOAD_CFG_VARIANT(remeberPasswd).toString();
ui->Accout->addItem(username);
ui->PasswdEdit->setText(passwd);
if(RemeberPasswd== "true")
{
ui->Rem_Passwd->setChecked(true);
}
if(AutoLogin== "true")
{
ui->Auto_Log->setChecked(true);
}
}
/**登录按钮**/
void Widget::on_btn_login_clicked()
{
savecfg();
}
结果就是这样的:相关文章推荐
- QT5中使用Echarts图表组件
- QT的阻塞与非阻塞延时
- VS2015和QT5.5项目出现的诡异错误(LNK2001和LNK09)的解决办法
- Qt自动补全(QCompleter或QListView)
- Qt学习——QListWidget控件的使用
- qt下信号发送机制
- qt超强精美绘图控件 - QCustomPlot一览 及 安装使用教程
- qt的关闭窗口
- Qt之界面实现技巧
- pyqt桌面开发--HelloWorld
- PyQt5教程(八)——拖放
- Qt小知识点
- Qt学习之路(4)创建对话框
- Qt—移动无边框窗体
- Qt学习之路(3):布局
- QT中关于QWidget的背景颜色和背景图片的设置
- QT学习之路(2):添加动作
- 我的QT5学习之路(三)——模板库、工具类和控件(下)
- Win7 Qt4.8.5+QtCreator2.8.0+mingw配置过程
- win732位 + QT4.8.6 + QT CRETER 环境配置的搭建