码迷,mamicode.com
首页 > 编程语言 > 详细

VC++开发个人事务管理信息系统

时间:2017-07-30 11:34:49      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:nes   相关   而且   blog   term   ack   hit   dia   更新   

工具

http://blog.csdn.net/bcbobo21cn/article/details/44200205

demoproject

http://pan.baidu.com/s/1slaISnr


1 开发个人事务管理信息系统;从网上下一个源代码来改。

来源

http://www.newxing.com/Code/VC/data/4004.html

该源代码执行例如以下,

技术分享

2 执行。出现下图错误;可知是ODBC訪问数据库,非ADO;

技术分享

3 查看 连接 菜单的代码,

技术分享


技术分享

是db.Open一句报的错;

4 建立ODBC数据源,

技术分享

发现没有access驱动;

技术分享

原因參阅,

http://blog.csdn.net/wang379275614/article/details/7803576

5 进到例如以下文件夹再配置ODBC。

技术分享


选择mdb数据库;配置成功;

技术分享


技术分享


6 执行。登录;

password不正确。可是输的是对的。看下代码;

if(strPasswd == CCrypt::Encrypt(m_strPasswd, 123) &&

此句可能存在问题,由于由数据库取到strPasswd。由更新数据变量得到界面输入的内容到m_strPasswd,这两个值实际是一个;加密后不会等于自身;

CCrypt::Encrypt()此函数的功能尚未搞清;下次再弄;

技术分享


技术分享

下断点可看到字符串加密后的值;

先凝视掉加密代码。

7 执行起来。 

技术分享


8 改动其菜单为个人事务管理信息系统的菜单;

技术分享


技术分享


9 在资源-字符串表中,改动主框标题

技术分享


10 打开数据库表;

工具:

http://blog.csdn.net/bcbobo21cn/article/details/51000041

技术分享

改动其JOB表内容为设备类别表内容。设备类别即个人物品类别,服装、电子设备等类;

11 插入DataGrid控件,

技术分享


技术分享

出错,參阅,

http://blog.csdn.net/zhongjling/article/details/7787626

12 加入设备类别管理对话框。插入DataGrid控件,做一个界面例如以下。

技术分享


13 新建对话框须要新加一个类

技术分享

14 选择DataGrid控件须要的类;

技术分享

15 例如以下图代码,打开记录集并绑定。

技术分享

出错;如图;研究之后,原因在于,如上代码实际是用于ADO方式訪问数据库的DataGrid绑定的;ODBC方式,眼下全部网上资料都是,一行行加入数据的。如

http://www.vckbase.com/index.php/wv/248

等;


更换DataGrid控件为ListCtrl

技术分享


按网上相关资料加入例如以下代码;

BOOL shblbDlg::OnInitDialog() 
{
CDialog::OnInitDialog();

// TODO: Add extra initialization here
m_list3.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
m_list3.InsertColumn(0,_T("类别编号"),LVCFMT_IMAGE|LVCFMT_LEFT);
m_list3.InsertColumn(1,_T("类别名称"));
int j;
for(j=0;j<2;j++)
{
m_list3.SetColumnWidth(j ,180);
}


CRecordset rs(&db); // 数据集
CString str1,str2;
rs.Open(CRecordset::forwardOnly, "select * from JOB");


int i=0;
//rs.MoveFirst();
do

//m_list3.InsertItem(i,rs.m_column1,0);
rs.GetFieldValue("CODE", str1);
rs.GetFieldValue("DESCRIPTION", str2);
    m_list3.InsertItem(i, str1,0);// 插入行
    m_list3.SetItemText(i, 1, str2);//设置其他列数据


i++;
rs.MoveNext();
}  while(!rs.IsEOF());
//rs.MoveFirst();

//m_shblbdlg.SetRefDataSource((LPUNKNOWN)rs.GetRecordset());
//m_shblbdlg.SetRefDataSource((LPUNKNOWN)rs.Requery());

return TRUE;  // return TRUE unless you set the focus to a control
             // EXCEPTION: OCX Property Pages should return FALSE
}

数据库记录已经取到;可是插入数据到ListCtrl存在一点问题。仅仅显示了一个字段。而且没有显示列头;


技术分享

须要在控件属性中选中 列表 样式,

技术分享

记录才会按行排列;

技术分享

VC++开发个人事务管理信息系统

标签:nes   相关   而且   blog   term   ack   hit   dia   更新   

原文地址:http://www.cnblogs.com/ljbguanli/p/7258475.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!