cdbexpalias.h
来自「本人买的<<VC++项目开发实例>>源代码配套光盘.」· C头文件 代码 · 共 124 行
H
124 行
// Copyright (C) 1991 - 1999 Rational Software Corporation
#if defined (_MSC_VER) && (_MSC_VER >= 1000)
#pragma once
#endif
#ifndef _INC_CDBEXPALIAS_3C36949A00CB_INCLUDED
#define _INC_CDBEXPALIAS_3C36949A00CB_INCLUDED
#include "CDBTreeNode.h"
#include "IniFile.h"
class CStringList;
//##ModelId=3C36949A00CB
#include "CDBExpDatabase.h" // Added by ClassView
//##ModelId=3C36949A00CB
class CDBExpAlias
: public CDBTreeNode
{
DECLARE_DYNAMIC(CDBExpAlias)
public:
//##ModelId=3C4129660000
char * get_AliasName()
{
return m_strAliasName;
}
//##ModelId=3C36957A0037
void LoadAlias();
//##ModelId=3C369589002F
void SaveAlias();
//##ModelId=3C369C4003CA
CDBExpAlias(CIniFile *pIniFile, const CString& szAliasName);
//##ModelId=3C369C59023F
virtual ~CDBExpAlias();
//##ModelId=3C369CE501D2
const CString& GetConnectString() const;
/* 用来给这个Alias设置一个连接的字符串。它会将这个参数值传?
给 m_strConnectString
//##ModelId=3C3885980218
*/ void SetConnectString(const CString& szConnStr);
/* 默认的情况下是删除当前的别名,您也可以指出要删除的别名的
名称。
因为别名的名称是用来对于一个别名作唯一标识的。
如果删除别名不成功,那么就会有异常出现
//##ModelId=3C3885990043
*/ void DeleteAlias(const CString& szAliasName = _T(""));
/* 生成一个新的数据库别名,它不能与现有的数据库的别名想重复?
否则将产生CAliasException::Duplicate错误。
//##ModelId=3C38859900C5
*/ void NewAlias(const CString& szAliasName, const CString& szConnStr);
/* 使用ModifyAlias您可以来修改Alias的名称,
Alias的连接字符串 等相关的操作。
要进行IsAliasExisting的检查。
//##ModelId=3C38859901B5
*/ void ModifyAlias(const CString& szAliasName, const CString& szConnStr);
//##ModelId=3C38859902D8
void EnumAliases(CStringList& Aliases);
private:
//##ModelId=3C3885990378
CString m_strConnectString;
//##ModelId=3C38859A018F
char m_strAliasName[255];
//##ModelId=3C38859A01F3
BOOL m_bIsActive;
//##ModelId=3CCC33720229
CIniFile *m_pIniFile;
/* 用来检查这个别名是不是处于活动的状态,如果是那么就不能进
行删除,和Modify的动作。
//##ModelId=3C38859C025A
*/ BOOL IsAliasActive();
protected:
//这个函数是用来修改菜单的, 当它返回的时候,
//一个符合上下文环境的弹出式菜单就被创建并修改成功.
//##ModelId=3CDCDEE3029D
virtual void BuildContextMenu(DBTREE_NODE_CONTEXT& context);
//##ModelId=3C41D26C0352
virtual BOOL ExpandItem(HTREEITEM hItem, UINT state);
//##ModelId=3C41D26D001F
virtual const char * GetTreeNodeCaption();
public:
void DeleteDB(CString &strDBName);
void CreateDB(CString& strDBName);
//在开始设计的时候,给BuildLVITEM采用的不是虚函数,
//可是到目前来看,这是不可以的,因为,这样的话就
//不能更改在右视中的图标。
//##ModelId=3CD958EC01C3
virtual void BuildLVITEM(int& nIndex);
//##ModelId=3C67402900F4
virtual void Erase(CDBTreeNode * pTreeNode);
//##ModelId=3C5CCCD80359
virtual BOOL OpenRelatedView(LPARAM lParam);
//##ModelId=3C5CC9C70290
BOOL FillListView(CListView *pView);
//##ModelId=3C5B9BA00104
virtual void OnMenuItemClick(UINT nCmd);
//##ModelId=3CCC3372025B
CDBExpDatabase *m_pDatabase;
//##ModelId=3C41D26D0047
virtual void BuildTVITEM(HTREEITEM hParentItem);
};
#endif /* _INC_CDBEXPALIAS_3C36949A00CB_INCLUDED */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?