⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 databaseoperatedlg.cpp

📁 一个简单的公交查询管理系统
💻 CPP
字号:
// DatabaseOperateDlg.cpp : implementation file
//

#include "stdafx.h"
#include "BusQuery.h"
#include "DatabaseOperateDlg.h"
#include "DB_Func.h"
#include "SBDestination.h"

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


extern SQLHENV henv;
extern SQLHDBC hdbc;
extern SQLHSTMT hstmt;
/////////////////////////////////////////////////////////////////////////////
// CDatabaseOperateDlg dialog


CDatabaseOperateDlg::CDatabaseOperateDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CDatabaseOperateDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDatabaseOperateDlg)
	m_String_Address = _T("");
	m_String_Time = _T("");
	m_strSrcFile = _T("");
	//}}AFX_DATA_INIT
}


void CDatabaseOperateDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDatabaseOperateDlg)
	DDX_Text(pDX, IDC_DATABASE_OPERATE_ADDRESS, m_String_Address);
	DDX_Text(pDX, IDC_DATABASE_OPERATE_TIME, m_String_Time);
	DDX_Text(pDX, IDC_DATABASE_OPERATE_STRDIR, m_strSrcFile);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDatabaseOperateDlg, CDialog)
	//{{AFX_MSG_MAP(CDatabaseOperateDlg)
	ON_BN_CLICKED(IDC_DATABASE_OPERATE_DOWNLOAD, OnDatabaseOperateDownload)
	ON_BN_CLICKED(IDC_DATABASE_OPERATE_UPDATE, OnDatabaseOperateUpdate)
	ON_BN_CLICKED(IDC_DATABASE_OPERATE_DIR, OnDatabaseOperateDir)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDatabaseOperateDlg message handlers

BOOL CDatabaseOperateDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	CRect rc(0, 0, 0, 0);
	GetParent()->GetClientRect(&rc);
	((CTabCtrl*)GetParent())->AdjustRect(false, &rc); 
	MoveWindow(&rc);
    //////////////////////////////////////////////////////////////////////////
   // 初始化系统信息
	char year[5];
    char month[2];
    char day[2];
	char address[32];

	memset(year,    0, 5);
	memset(month,   0, 2);
	memset(day,     0, 2);
	memset(address, 0, 32);

 	// 查询信息
	int rv;
	rv = DB_SYSTEM_INFOR_Query(hstmt, year, month, day, address);
	if( rv != 0)
	{
		AfxMessageBox("数据库信息读取错误!");
		return FALSE;
	}

	m_String_Address = address;


	CString str;
	str.Empty();
	str = year;
	m_String_Time = " "+str+"年 ";
	str = month;
	m_String_Time = m_String_Time+str+"月 ";
	str = day;
	m_String_Time = m_String_Time+str+"日";

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

void CDatabaseOperateDlg::OnCancel() 
{
	// TODO: Add your message handler code here and/or call default
	return;
}

void CDatabaseOperateDlg::OnOK() 
{
	// TODO: Add your message handler code here and/or call default
	return;
}

void CDatabaseOperateDlg::OnDatabaseOperateDownload() 
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
	m_String_Address = "explorer http://"+m_String_Address;
    ::WinExec(m_String_Address,SW_MAXIMIZE);
	//::WinExec("explorer http://www.163.com",SW_MAXIMIZE);
}

void CDatabaseOperateDlg::OnDatabaseOperateUpdate() 
{
	// TODO: Add your control notification handler code here
	UpdateData(true);
	if( m_strSrcFile.GetLength() == 0)
	{
		AfxMessageBox("你还没有选择目录!");
		return;
	}
	CFileFind m_file;
	CString m_strDstFile;
	m_strDstFile.Empty();
	m_strDstFile = ".\\db.mdb";
	
	if (m_strSrcFile.Right(1) != "\\")
	{
		m_strSrcFile += "\\" ;
	}
	m_strSrcFile = m_strSrcFile + "db.mdb";
	
	BOOL sign;
	sign = m_file.FindFile(m_strSrcFile, 0);
	if(!sign)
	{
		AfxMessageBox("此目录下没有“db.mdb”文件!");
		return;
	}

	int rv;
	rv = DB_Close(henv, hdbc, hstmt);
	
	sign = CopyFile(m_strSrcFile,m_strDstFile,FALSE);
	if(sign)
	{
		AfxMessageBox("更新数据库操作成功");
	}
	else
	{
		AfxMessageBox("更新数据库操作失败");
	}	
	rv = DB_Open(&henv,&hdbc,&hstmt);
}

void CDatabaseOperateDlg::OnDatabaseOperateDir() 
{
	// TODO: Add your control notification handler code here
	UpdateData(true);
	CSBDestination sb(m_hWnd,IDS_BFF_NEWDIR);
	sb.SetFlags(BIF_RETURNONLYFSDIRS | BIF_STATUSTEXT);
	sb.SetInitialSelection(m_dir);
	if (sb.SelectFolder())
	{
		m_strSrcFile = sb.GetSelectedFolder();
		UpdateData(FALSE);
	}

    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -