VC++模糊查询实例Word文档格式.docx
- 文档编号:16026158
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:19
- 大小:769.52KB
VC++模糊查询实例Word文档格式.docx
《VC++模糊查询实例Word文档格式.docx》由会员分享,可在线阅读,更多相关《VC++模糊查询实例Word文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
ADOBS"
)rename("
EOF"
"
adoEOF"
)
usingnamespaceADOBS;
添加如下图所示
2.2在类视图(ClassView)中,展开CTestApp->
双击CTestApp[]构造方法,在右侧声明全局的数据库访问变量,
BOOLFlag=FALSE;
//登录标识
_ConnectionPtrm_pCon;
//ADO连接对象
_RecordsetPtrm_pRs;
_RecordsetPtrm_pRs1;
_CommandPtrm_pCom;
CStringuser,password;
//记录当前用户
CStringstrserver;
CStringstrdbName;
CStringstrUser;
CStringstrPassword
2.3在CTestApp类添加IniAdo()方法
2.3.1类视图(ClassView)CTestApp类中添加IniAdo()方法,如下
2.3.2点击出现对话框,
2.3.3点击确定,在InitAdo()方法中添加下列代码:
try
{
CStringtemp;
charfilepath[MAX_PATH];
GetModuleFileName(NULL,filepath,MAX_PATH);
temp=theApp.ExtractFilePath(filepath);
//获取可执行文件的路径
//m_pCon.CreateInstance("
ADODB.Connection"
);
CStringstrAdoConn;
chartemp1[100];
GetPrivateProfileString("
DatabaseConfig"
Server"
"
temp1,100,temp+"
login.ini"
strserver=(TCHAR*)temp1;
Database"
strdbName=temp1;
User"
strUser=temp1;
PWD"
strPassword=temp1;
strAdoConn.Format("
driver={SQLServer};
SERVER=%s;
UID=%s;
PWD=%s;
DATABASE=%s"
strserver,strUser,strPassword,strdbName);
m_pCon.CreateInstance(_uuidof(Connection));
m_pCon->
ConnectionString=(_bstr_t)strAdoConn;
Open("
NULL);
m_pCom.CreateInstance("
ADODB.Command"
m_pRs.CreateInstance(_uuidof(Recordset));
m_pRs1.CreateInstance(_uuidof(Recordset));
//ADOFLAG=TRUE;
}
catch(_com_error)
//ADOFLAG=FALSE;
Flag=FALSE;
MessageBox(0,"
请检查系统配置信息"
"
数据库连接失败"
MB_OK);
return;
catch(...)
{
AfxMessageBox("
SYSError"
return;
2.4在CTestApp类创建ExtractFilePath(LPTSTRfilename)方法
2.4.1类视图(ClassView)CTestApp类中添加ExtractFilePath(LPTSTRfilename)方法,如下
2.4.2点击AddMemberFunction,弹出
2.4.3点击确定,之后再该方法中添加如下代码:
CStringappname;
appname=AfxGetAppName();
appname=appname+"
.exe"
;
intpos;
temp=filename;
pos=temp.Find(appname,0);
temp=temp.Left(pos);
returntemp;
如下图所示
2.5在在CTestApp类InitInstance方法中,添加AfxOleInit();
IniAdo();
语句,如下图
2.6建立一个login.ini文件,放到工程的Debug目录,生成发行版本时,放到release目录,内容为
[DatabaseConfig]
Server=.
Database=LLJYDatabase数据库的名称我的为LLJYDatabase
User=sa
PWD=有密码的将密码写在这里
三、界面设计
3.1在资源视图中,双击IDD_TEST_DIALOG,之后再右侧的窗口中,设计界面
3.2双击确定,
3.3点击OK,在代码中注释掉CDialog:
:
OnOK();
,用//CDialog:
OnOK()即可,这样可以防止按回车键,系统调用默认的关闭窗口的方法,如下
3.5按CTRL+Tab组合键,返回设计界面
3.6删除确定及取消按钮,重新设计,添加一个静态文本框、一个编辑框、一个按钮、一个listcontrol显示控件,如下
3.7为控件关联变量,在窗口的空白区域右键单击
3.8单击ClassWIzard,弹出
3.9MemberVariables选项卡下,选中相应控件,点击AddVariables按钮关联变量,关联后的如下
3.10点击OK,即完成控件与变量的关联。
3.11设置ListControl控件的显示风格,
3.11.1在CTeatDialog类中的OnInitDialog[]方法中添加以下代码:
CDialog:
OnInitDialog();
m_list1.ModifyStyle(0,LVS_SHOWSELALWAYS);
m_list1.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_FLATSB);
m_list1.InsertColumn(0,"
产品名称"
LVCFMT_LEFT,100);
m_list1.InsertColumn(1,"
生产日期"
如下图所示
3.11.2运行效果如下:
3.12按钮查询事件
3.12.1双击模糊查询按钮,弹出
3.12.2点击OK
3.12.3在OnMoHuquery()事件中添加如下代码
CStringc_value;
m_value.GetWindowText(c_value);
if(c_value=="
{
MessageBox("
请输入查询的产品名称."
提示"
MB_OK|MB_ICONINFORMATION);
else
CStringsql;
m_list.DeleteAllItems();
sql.Format("
selectproductname,stockdatefromtb_productwhereproductnamelike'
%%%s%%'
"
c_value);
m_pRs=m_pCon->
Execute((_bstr_t)sql,NULL,adCmdText);
introw=0;
while(!
m_pRs->
adoEOF)
{
CStringtemp;
m_list.InsertItem(10000,"
for(inti=0;
i<
m_pRs->
GetFields()->
Count;
i++)
{
temp=(TCHAR*)(_bstr_t)m_pRs->
GetItem((long)i)->
Value;
m_list.SetItemText(row,i,temp);
}
m_pRs->
MoveNext();
row+=1;
}
加入代码如下
3.12.4在testDlg.cpp文件中声明部分添加如下代码
extern_ConnectionPtrm_pCon;
extern_RecordsetPtrm_pRs;
extern_CommandPtrm_pCom;
添加入下图:
3.12.5运行后,输入计算,点击模糊查询按钮,效果如下图:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VC 模糊 查询 实例