📄 delareadlg.cpp
字号:
// DelAreaDlg.cpp : 实现文件
//
#include "stdafx.h"
#include "House.h"
#include "DelAreaDlg.h"
#include ".\delareadlg.h"
// CDelAreaDlg 对话框
IMPLEMENT_DYNAMIC(CDelAreaDlg, CDialog)
CDelAreaDlg::CDelAreaDlg(CWnd* pParent /*=NULL*/)
: CDialog(CDelAreaDlg::IDD, pParent)
{
m_pDB = NULL;
}
CDelAreaDlg::~CDelAreaDlg()
{
}
void CDelAreaDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_COMBO1, m_AreaList);
}
BEGIN_MESSAGE_MAP(CDelAreaDlg, CDialog)
ON_BN_CLICKED(IDOK, OnBnClickedOk)
END_MESSAGE_MAP()
// CDelAreaDlg 消息处理程序
void CDelAreaDlg::SetDB( CDaoDatabase *pDB )
{
m_pDB = pDB;
}
void CDelAreaDlg::OnBnClickedOk()
{
UpdateData();
CString temp,name;
// 得到当前选择的区域名
m_AreaList.GetLBText(m_AreaList.GetCurSel(),name );
temp.Format("您确定要删除区域 %s 吗?",name);
if( MessageBox(temp,"提示",MB_YESNO) == IDNO)
return;
name.Replace("'","''");
temp.Format("DROP TABLE %s",name);
try
{
m_pDB->Execute( temp );
}
catch(...)
{
MessageBox("表删除失败");
return;
}
// 重新打开数据库,以适应更改
try
{
m_pDB->Close();
m_pDB->Open("house.mdb");
}
catch(...)
{
MessageBox("数据库打开失败");
}
LoadName();
}
// 将所有的区名读入List框
void CDelAreaDlg::LoadName()
{
// 删除所有记录
while(m_AreaList.GetCount() > 0 )
m_AreaList.DeleteString(0);
CDaoTableDefInfo info;
for( int i = 0; i < m_pDB->GetTableDefCount(); i++ )
{
m_pDB->GetTableDefInfo(i,info);
if( info.m_lAttributes & dbSystemObject )
continue;
m_AreaList.AddString( info.m_strName );
}
if( m_AreaList.GetCount() > 0 )
m_AreaList.SetCurSel( 0 );
}
BOOL CDelAreaDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: 在此添加额外的初始化
LoadName();
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -