当前位置: 首页 > news >正文

定制网站建设制作h5网站要多久

定制网站建设制作,h5网站要多久,大庆城市建设投资网站,有哪些免费做网站目录 一.功能介绍 二.暴露属性 三.指定INI文件的路径和格式。 四.登录操作 1.检查INI文件中是否含有登录信息#xff1b; 2.读取存储的ID#xff1b; 3.读取存储的密码; 4.成功返回1#xff1b;失败返回2#xff1b; 五.修改账号 1.检查INI文件中是否含有登录信…目录 一.功能介绍 二.暴露属性 三.指定INI文件的路径和格式。 四.登录操作 1.检查INI文件中是否含有登录信息 2.读取存储的ID  3.读取存储的密码; 4.成功返回1失败返回2 五.修改账号 1.检查INI文件中是否含有登录信息 2.读取存储的ID 读取存储的密码; 3.判断密码是否正确 4.成功返回1失败返回2 六.修改密码 1.检查INI文件中是否含有登录信息 2.读取存储的ID 读取存储的密码; 3.判断账号是否正确 4.成功返回1失败返回2 七.效果展示 八.代码展示 1.h 2.cpp 3.qml登录 4.qml修改账号 5.修改密码qml 6.主页面mian.qml 一.功能介绍 在Qt中使用QSettings类来读写INI文件主要作用是保存和读取程序的配置参数。INI文件作为初始化文件通常用于存储应用程序的设置、用户偏好配置或其他形式的数据。下面将从多个角度进行分析 1.数据持久化使用INI文件可以在不同的程序运行会话之间保留配置信息使得用户可以自定义并保存他们的偏好设置。 2.代码解耦性通过外部配置文件管理配置项可以将程序逻辑与配置数据分离提高代码的可维护性和灵活性。 3.平台兼容性QSettings支持多种平台和格式包括Windows注册表、Mac OS X的PLists以及跨平台的INI文件使得程序更易于迁移和适配不同操作系统。 4.操作简易性QSettings封装了对INI文件的操作提供了简单的API来读取和写入键值对简化了配置文件的管理过程。 5.实时反映性当程序的配置发生变化时可以直接写入INI文件而不需要重启程序即可使更改即时生效。 6.注释说明性INI文件支持注释可以为配置文件中的节(section)或键(key)添加描述增加文件的可读性和可维护性。 7.结构清晰性INI文件具有清晰的层级结构通过节(section)、键(key)、值(value)的组织方式可以方便地管理和查找配置项。 8.类型安全性QSettings结合QVariant使用能够存储多种类型的数据并且在读取时自动进行类型转换确保了数据类型的安全性和准确性。 二.暴露属性 1.暴露用户登录属性 2.暴露修改账号属性 3.暴露修改密码属性 三.指定INI文件的路径和格式。 四.登录操作 1.检查INI文件中是否含有登录信息 2.读取存储的ID  3.读取存储的密码; 4.成功返回1失败返回2 当按钮被点击时会调用_QMLreadini.userLogin(_idinput.text,_pasinput.text)这个函数该函数调用C对象readini的userLogin方法传入用户输入的用户名_idinput.text和密码_pasinput.text。 userLogin方法执行后会返回一个整数 flag表示登录的结果。根据 flag 的值会执行不同的操作 如果 flag 为 0表示没有登录信息可能会提示用户“空”。如果 flag 为 1表示登录成功可以在这里添加成功登录后的操作例如显示其他界面或者更新状态。如果 flag 为 2表示登录失败会提示用户“失败”。 五.修改账号 1.检查INI文件中是否含有登录信息 2.读取存储的ID 读取存储的密码; 3.判断密码是否正确 4.成功返回1失败返回2 当按钮被点击时会调用_QMLreadini.setuserid(_idModify.text,_pasModify.text)这个函数该函数调用C对象readini的setuserid方法传入用户输入的用户ID_idModify.text和密码_pasModify.text。 setuserid方法执行后会返回一个整数 flag表示修改账号的结果 如果 flag 为 0表示用户ID或密码为空。如果 flag 为 1表示修改账号成功会显示“修改成功”的文本并启动一个定时器timerid.start()1秒钟后关闭账号修改页面同时隐藏“修改失败”的文本。如果 flag 为 2表示修改账号失败会显示“修改失败”的文本。 六.修改密码 1.检查INI文件中是否含有登录信息 2.读取存储的ID 读取存储的密码; 3.判断账号是否正确 4.成功返回1失败返回2 当按钮被点击时会调用_QMLreadini.setuserpas(_Modifyid.text,_Modifypas.text)这个函数该函数调用C对象readini的setuserpas方法传入用户输入的用户ID_Modifyid.text和密码_Modifypas.text。 setuserpas方法执行后会返回一个整数 flag表示修改密码的结果 如果 flag 为 0表示用户ID或密码为空。如果 flag 为 1表示修改密码成功会显示“修改成功”的文本并启动一个定时器timerpas.start()1秒钟后关闭密码修改页面同时隐藏“修改失败”的文本。如果 flag 为 2表示修改密码失败会显示“修改失败”的文本。 七.效果展示 八.代码展示 1.h #ifndef READINI_H #define READINI_H #include QDebug #include QSettings #include QObject class QSettings;class readini : public QObject {Q_OBJECT public:readini();Q_INVOKABLE int userLogin(QString id , QString pas);Q_INVOKABLE int setuserid(QString id , QString pas);Q_INVOKABLE int setuserpas(QString id , QString pas);private:QString m_id;QString m_pas;QSettings *m_pSettings; };#endif // READINI_H2.cpp #include readini.hreadini::readini() {m_pSettings new QSettings(E:/lzy/setting.ini,QSettings::IniFormat); }int readini::userLogin(QString id, QString pas) {if(m_pSettings-contains(login/id)){m_id m_pSettings-value(login/id).toString();m_pas m_pSettings-value(login/pas).toString();if(m_id id m_pas pas){qDebug()sssssssssss;return 1;}else {qDebug()fffffffffff;return 2;}}else {qDebug()aaaaaaaaa;}qDebug()idpas;return 0;}int readini::setuserid(QString id, QString pas) {if(m_pSettings-contains(login/id)){m_id m_pSettings-value(login/id).toString();m_pas m_pSettings-value(login/pas).toString();if(m_pas pas id ! ){m_pSettings-beginGroup(login);//小组名m_pSettings-setValue(id,id);m_id id;m_pSettings-endGroup();return 1;}else{return 2;}}return 0; }int readini::setuserpas(QString id, QString pas) {if(m_pSettings-contains(login/pas)){m_id m_pSettings-value(login/id).toString();m_pas m_pSettings-value(login/pas).toString();if(m_id id pas ! ){m_pSettings-beginGroup(login);//小组名m_pSettings-setValue(pas,pas);m_pas pas;m_pSettings-endGroup();return 1;}else{return 2;}}return 0; }3.qml登录 import QtQuick 2.7 import QtQuick.Controls 1.4 import QMLreadini 1.0 import QMLsqlconnect 1.0Rectangle {visible: truewidth: 400height: 800Column{spacing: 30Text {id: nametext: qsTr(登录)font.pixelSize: 30}TextField{id:_idinputwidth: 200height: 60}TextField{id:_pasinputwidth: 200height: 60}Button{width: 200height: 40Text {anchors.centerIn: parenttext: qsTr(登录)font.pixelSize: 30}onClicked: {var flag _QMLreadini.userLogin(_idinput.text,_pasinput.text)if(flag 0){console.log(空)}if(flag 1){console.log(成功)//_SqlLite.visible true}if(flag 2){console.log(失败)}}}Row{spacing: 30Button{width: 85height: 30Text {anchors.centerIn: parenttext: qsTr(修改账号)font.pixelSize: 20}onClicked:{_ModifyID.visible ! _ModifyID.visible}}Button{width: 85height: 30Text {anchors.centerIn: parenttext: qsTr(修改密码)font.pixelSize: 20}onClicked:{_ModifyPas.visible !_ModifyPas.visible}}}}}4.qml修改账号 import QtQuick 2.7 import QtQuick.Controls 1.4 import QMLreadini 1.0 import QMLsqlconnect 1.0Rectangle {visible: truewidth: 400height: 800Timer {id: timeridinterval: 3000 // 3000ms 3 secondsrunning: falseonTriggered: {_ModifyID.visible falsetimerid.stop()}}Column{spacing: 30Text {id: nametext: qsTr(修改id)font.pixelSize: 30}TextField{id:_idModifywidth: 200height: 60}TextField{id:_pasModifywidth: 200height: 60}Button{width: 100height: 40Text {anchors.centerIn: parenttext: qsTr(修改账号)font.pixelSize: 20}onClicked: {var flag _QMLreadini.setuserid(_idModify.text,_pasModify.text)if(flag 0){console.log(空)}if(flag 1){console.log(成功)_idModification.visible truetimerid.start()_idModificationfailure.visible false}if(flag 2){console.log(失败)_idModificationfailure.visible true}}}Text {id:_idModificationfailurefont.pixelSize: 30text: qsTr(修改失败)visible: false}Text {id:_idModificationfont.pixelSize: 30text: qsTr(修改成功)visible: false}Button{width: 100height: 40onClicked: {MyTools.gettoolTestInstance().doSomething()console.log(aaaaaaaaaaaaaaaaaaaa)}}}}5.修改密码qml import QtQuick 2.7 import QtQuick.Controls 1.4 import QMLreadini 1.0 import QMLsqlconnect 1.0Rectangle {visible: truewidth: 400height: 800Timer {id: timerpasinterval: 3000 // 3000ms 3 secondsrunning: falseonTriggered: {_ModifyPas.visible falsetimerpas.stop()}}Column{spacing: 30Text {id: nametext: qsTr(修改Pas)font.pixelSize: 30}TextField{id:_Modifyidwidth: 200height: 60}TextField{id:_Modifypaswidth: 200height: 60}Button{width: 100height: 40Text {anchors.centerIn: parenttext: qsTr(修改密码)font.pixelSize: 20}onClicked: {var flag _QMLreadini.setuserpas(_Modifyid.text,_Modifypas.text)if(flag 0){console.log(空)}if(flag 1){console.log(成功)_pasModification.visible truetimerpas.start()_pasModificationfailure.visible false}if(flag 2){console.log(失败)_pasModificationfailure.visible true}}}Text {id:_pasModificationfailurefont.pixelSize: 30text: qsTr(修改失败)visible: false}Text {id:_pasModificationfont.pixelSize: 30text: qsTr(修改成功)visible: false}} }6.主页面mian.qml Login{id:_loginanchors.centerIn: parent}ModifyID{id:_ModifyIDanchors.centerIn: parent}ModifyPas{id:_ModifyPasanchors.centerIn: parent}
http://www.w-s-a.com/news/936405/

相关文章:

  • 泰安中呼网站建设有限公司 概况个人网站的设计与实现参考文献
  • 圣诞节网站怎么做怎么获取网站的图片
  • 想找个人做网站音乐网站建设教程视频教程
  • 网站收录一键提交阿里巴巴做网站多少钱
  • 怎么做网站投放广告商务网站建设实训报告
  • 服装代销的网站源码国内电子商务网站有哪些
  • qq空间怎么做网站做企业平台的网站有哪些
  • 网站的优缺点wordpress手机适配模板中文
  • 福州网站建设H5广告公司简介简短
  • 网站404页面的作用app开发郑州
  • 亚马逊中国网站建设目标网站建设的策划
  • 林州网站建设服务徐州网站建设
  • 如何检测网站死链景德镇网站建设哪家好
  • 旅游网站开发目标天津专业做网站公司
  • 名者观看网站快手小程序
  • 网络架构扁平化windows优化大师好不好
  • 安康养老院收费价格表兰州seo整站优化服务商
  • 网站开发技术方案模板无锡网站建设推荐
  • 自助建站系统注册三维家3d设计软件免费
  • 做seo网站标题重要吗郑州众诚建设监理有限公司网站
  • 建设网站南沙区百度关键词推广怎么做
  • 网站建设公司做销售前景好不好石家庄外贸网站制作
  • windows2008做网站网站首页打开速度
  • 做外贸要做什么网站服装设计图
  • 中山市路桥建设有限公司网站网站开发角色分配权限
  • 加强档案网站建设网站搭建好了不用会不会被攻击
  • 维护网站信息网络建设服务
  • 网站建设策划书模板下载用自己电脑配置服务器做网站
  • 360免费建站空间淘宝数据网站开发
  • 做分销的网站本地dede网站怎么上线