?? dataset.cpp
字號:
// DataSet.cpp : implementation file
//
#include "stdafx.h"
#include "Abc.h"
#include "DataSet.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDataSet
IMPLEMENT_DYNAMIC(CDataSet, CDaoRecordset)
CDataSet::CDataSet(CDaoDatabase* pdb)
: CDaoRecordset(pdb)
{
//{{AFX_FIELD_INIT(CDataSet)
m_column1 = _T("");
m_column2 = _T("");
m_nFields = 2;
//}}AFX_FIELD_INIT
m_nDefaultType = dbOpenDynaset;
}
CString CDataSet::GetDefaultDBName()
{
CString strCfgFilePath=GetCfgFilePath();
CFileFind flFind;
CFile file;
if(!flFind.FindFile(strCfgFilePath))
{
file.Open(strCfgFilePath,CFile::modeCreate);
file.Close();
}
flFind.Close();
file.Open(strCfgFilePath,CFile::modeReadWrite);
m_pCfgInfo= new CFG_INFO;
if((file.Read(m_pCfgInfo,sizeof(CFG_INFO))!=sizeof(CFG_INFO))||
(strlen(m_pCfgInfo->szDaoFilePath)<=0)||
(!flFind.FindFile(m_pCfgInfo->szDaoFilePath)))
{
file.Close();
CString strFilter;
strFilter.LoadString(IDS_OPEN_FILEFILTER);
CFileDialog flDlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,strFilter);
CString strTitle;
strTitle.LoadString(IDS_OPEN_FILEDIALOG_TITLE);
flDlg.m_ofn.lpstrTitle=strTitle;
if(flDlg.DoModal()==IDOK)
{
strcpy(m_pCfgInfo->szDaoFilePath,flDlg.GetPathName());
m_pCfgInfo->crFontColor=0;
CFont *pFont=new CFont;
CString strFont;
strFont.LoadString(IDS_DEFAULT_FONT);
pFont->CreatePointFont(120,strFont);
pFont->GetLogFont(&(m_pCfgInfo->lfViewFont));
UpdateCfgInfo();
}
else
exit(0);
}
return _T(m_pCfgInfo->szDaoFilePath);
}
CString CDataSet::GetDefaultSQL()
{
return _T("[表1]");
}
void CDataSet::DoFieldExchange(CDaoFieldExchange* pFX)
{
//{{AFX_FIELD_MAP(CDataSet)
pFX->SetFieldType(CDaoFieldExchange::outputColumn);
DFX_Text(pFX, _T("[英文單詞]"), m_column1);
DFX_Text(pFX, _T("[釋義]"), m_column2);
//}}AFX_FIELD_MAP
}
/////////////////////////////////////////////////////////////////////////////
// CDataSet diagnostics
#ifdef _DEBUG
void CDataSet::AssertValid() const
{
CDaoRecordset::AssertValid();
}
void CDataSet::Dump(CDumpContext& dc) const
{
CDaoRecordset::Dump(dc);
}
#endif //_DEBUG
//建立配置文件
CString CDataSet::GetCfgFilePath()
{
CString strAppPath;
GetModuleFileName(NULL,strAppPath.GetBuffer(MAX_PATH),MAX_PATH);
strAppPath.ReleaseBuffer();
strAppPath.TrimRight();
int n=strAppPath.ReverseFind('\\');
int length=strAppPath.GetLength();
CString strAppDir=strAppPath.Left(n+1);
CString strAppName;
strAppName=AfxGetAppName();
CString strCfgFileExtName;
strCfgFileExtName.LoadString(IDS_CFGFILEEXTNAME);
CString strCfgFilePath=strAppDir+strAppName+"."+strCfgFileExtName;
return strCfgFilePath;
}
void CDataSet::UpdateCfgInfo()
{
CString strCfgFilePath=GetCfgFilePath();
CFile file;
file.Open(strCfgFilePath,CFile::modeWrite);
file.SeekToBegin();
file.Write(m_pCfgInfo,sizeof(CFG_INFO));
file.Close();
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -