更改口令的界面的开发 (VC和数据库应用)

原创 2004年09月09日 15:15:00

// ChangePswDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Address.h"
#include "ChangePswDlg.h"
#include "PswdSet.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CChangePswDlg dialog


CChangePswDlg::CChangePswDlg(CWnd* pParent /*=NULL*/)
 : CDialog(CChangePswDlg::IDD, pParent)
{
 //{{AFX_DATA_INIT(CChangePswDlg)
 m_oldpassword = _T("");
 m_newpassword = _T("");
 m_qurenpassword = _T("");
 //}}AFX_DATA_INIT
}


void CChangePswDlg::DoDataExchange(CDataExchange* pDX)
{
 CDialog::DoDataExchange(pDX);
 //{{AFX_DATA_MAP(CChangePswDlg)
 DDX_Control(pDX, IDC_EDIT1, m_ctrloldpassword);
 DDX_Text(pDX, IDC_EDIT1, m_oldpassword);
 DDX_Text(pDX, IDC_EDIT2, m_newpassword);
 DDX_Text(pDX, IDC_EDIT3, m_qurenpassword);
 //}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CChangePswDlg, CDialog)
 //{{AFX_MSG_MAP(CChangePswDlg)
 //}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////
//名称:OnOk
//功能:更改用户口令


////////////////////////////////////////////////////////////////////////
void CChangePswDlg::OnOK()
{
 // TODO: Add extra validation here
 UpdateData(TRUE);//读入用户输入的密码
 CDBVariant varValue;///CDBVariant???  A CDBVariant object represents a variant data type for the MFC ODBC classes. CDBVariant is similar to COleVariant; however, CDBVariant does not use OLE. CDBVariant allows you to store a value without worrying about the value’s data type
 CPswdSet m_recordset(&m_database);//记录及类
 CString strSQL;
 strSQL.Format("select * from password where PASSWORD='%s'",m_oldpassword);
 m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);
 //此处为一种执行SQL语句语法之一,

 
 //int temp=0;
 //m_recordset.GetFieldValue(temp,varValue);
 //如果输入的密码与数据库中的不一致,则弹出提示框
 if(m_recordset.GetRecordCount()==0)//改点特强 
 //if(m_oldpassword.Compare(varValue.m_pstring->GetBuffer(1))!=0)
 {
  MessageBox("原密码错误!","提示",MB_OK|MB_ICONINFORMATION);
  m_oldpassword.Empty();
  m_newpassword.Empty();
  m_qurenpassword.Empty();
  m_ctrloldpassword.SetFocus();
  UpdateData(FALSE);//清空所输入的内容将变化反映到对话框中
 }
 //如果原密码正确,两次新密码不同
 else
 {
  if(m_newpassword.Compare(m_qurenpassword)!=0)//比较两个字符串是否相同
  {
   MessageBox("新密码错误!","提示",MB_OK|MB_ICONINFORMATION);
   m_oldpassword.Empty();
   m_newpassword.Empty();
   m_qurenpassword.Empty();
   UpdateData(FALSE);//清空所输入的内容
  }
  else
  {
   strSQL.Format("update password set PASSWORD='%s' where PASSWORD='%s'",m_newpassword,m_oldpassword);
   m_database.ExecuteSQL(strSQL);//该种执行SQL 语句的最佳且最 容易理解的 方法 ,
   CDialog::OnOK();
   MessageBox("恭喜,口令更改成功!下次登录请使用口令: "+m_newpassword+"  ","提示",MB_OK|MB_ICONINFORMATION);
  }
 }
}


/////////////////////////////////////////////////////////////////////////
//名称:OnInitDialog
//功能:更改口令对话框初始化


////////////////////////////////////////////////////////////////////////
BOOL CChangePswDlg::OnInitDialog()
{
 CDialog::OnInitDialog();
 
 // TODO: Add extra initialization here
 m_ctrloldpassword.SetFocus();//注意在定义变量时 有一个技巧的,
   //那就是,可以一个控件有两种类型的 变量, 因为不同类型的 变量有不同的成员函数
 return TRUE;  // return TRUE unless you set the focus to a control
               // EXCEPTION: OCX Property Pages should return FALSE
}

VC 界面上如何显示中文

在资源中选中相应对话框,点右键,在其属性对话框中设置语言为CHINESE(PRC)。设置好后对   对话框   中的所有文本信息重新输入 ...
  • ljzhao82
  • ljzhao82
  • 2007年06月20日 16:10
  • 544

谷歌浏览器开发调式工具devTools最新教程(完整版)

基本说明谷歌浏览器chrome devTools最新教程(完整版)google浏览器chrome已超越IE成为最流行的浏览器.chrome之所以受到人们的喜爱,是因为其轻,快,同时也非常安全. 对于...
  • songtaoxy
  • songtaoxy
  • 2017年11月26日 00:46
  • 251

使用C#开发数据库应用系统----------------- 第三章 上机练习

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin...
  • weixin_36024620
  • weixin_36024620
  • 2016年12月07日 16:54
  • 260

VC界面的实现

微软C++开发工具VC++由于其界面友好,实用而被许多软件开发者所模仿,但是直接用MFC来实现VC界面不仅要耗费大量时间,而且在实现类似VC工具条停靠,拉伸算法, 吵吵菜单项和工具条按钮自定义功能网...
  • yangchaovc
  • yangchaovc
  • 2011年11月05日 23:05
  • 237

使用C#开发数据库应用系统_构建布局良好的Windows程序

第2章 构建布局良好的Windows程序 一.使用菜单栏和工具栏 菜单(Menu)最初是指餐馆提供的列有各种菜肴的清单。在计算机应用中,菜单指应用程序运行中出现在界面上的选项列表,供用户选择执行。 ...
  • hacker_A
  • hacker_A
  • 2017年11月06日 22:30
  • 247

开发人员常用DOS命令

开发人员 常用 DOS 命令
  • o2djmax
  • o2djmax
  • 2016年05月31日 09:18
  • 177

 Visual C++ 开发数据库应用程序

 用Visual C++开发数据库应用程序   1.概述1.1 Visual C++开发数据库技术的特点Visual C++提供了多种多样的数据库访问技术——ODBC API、MFC ODBC、DAO...
  • liufei_learning
  • liufei_learning
  • 2011年05月16日 09:28
  • 1427

VC个性化窗口界面设计

本文最新链接地址:http://lifepeak.net/it-jishu/vc-gexing-jiemian.html在VC下有时需要制作个性化的窗口界面,用界面库又比较繁琐,而且有些界面库还必须收...
  • World7th
  • World7th
  • 2007年06月13日 16:19
  • 5496

使用C#开发数据库应用系统_初识Windows程序

第1章 初识Windows程序 一.第一个Windows程序 1.创建Windows程序 不需要一行代码,就能够运行出一个窗体,这得益于Visual Studio和.NET Framework的...
  • hacker_A
  • hacker_A
  • 2017年11月06日 22:24
  • 316

向导界面的开发

向导界面的开发。在向导界面中通过左右滑动显示应用的有关介绍,本例子中有5屏。这5屏分别在单独的xml文件中定义,然后通过LayoutInflater得到对应的view对象,将这5个View对象添加到控...
  • qiuhu0793
  • qiuhu0793
  • 2013年03月21日 13:01
  • 1165
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:更改口令的界面的开发 (VC和数据库应用)
举报原因:
原因补充:

(最多只允许输入30个字)