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

📄 group.h

📁 beereader source code
💻 H
字号:
// Group.h: interface for the CGroup class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_GROUP_H__6C7550FB_67A6_48CF_AAD9_F8A9D460C3F0__INCLUDED_)
#define AFX_GROUP_H__6C7550FB_67A6_48CF_AAD9_F8A9D460C3F0__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

typedef struct _tagGroupNode{//组树存储结点结构.
	CString    szNodeName; //结点名称.
	DWORD      dwData; //与结点关联的数据位,如果为0表示此结点为频道组,否则表示频道类指针.
	_tagGroupNode*  pParentNode; //父亲结点指针,根结点此值为NULL.
	_tagGroupNode*  pFirstChild; //第一个孩子结点指针.
	_tagGroupNode*  pNextSibling; //下一个兄弟结点指针.
	_tagGroupNode*	pLastSibling; //上一个兄弟结点指针.
	_tagGroupNode*  pNextNode; //下一个结点,用于将所有叶子结点串成一个链表结构.

}GROUPNODE,* PGROUPNODE;

class CGroup  //组类,用于处理在树控件中操作的对象,如频道组、收藏组等的基类。
{
public:
	virtual void ReName( PGROUPNODE pNode,CString szNewName);
	virtual BOOL ReMoveNode( PGROUPNODE pNode,BOOL bChild = TRUE );
	PGROUPNODE GetRootNode();
	virtual PGROUPNODE Insert(PGROUPNODE pParentNode, PGROUPNODE pNode,CString szName, DWORD dwData);
	virtual PGROUPNODE FindNode( DWORD dwData );
	virtual PGROUPNODE FindGroupNode( CString szName );
	virtual BOOL Save();
	virtual int Load();
	virtual void Clear();
	CGroup( CString strGroupSaveTag,CString strName = _T("") );
	virtual ~CGroup();

protected:
    CString		m_GroupName; //组名称.
	CString		m_GroupSaveTag;//组信息存储文件名称.
	CTreeCtrl*  m_pTreeCtrl; //与组关联的树控件.

	GROUPNODE   m_RootNode; //根结点.

private:
	void ReMoveNodeList(PGROUPNODE pNode);
	PGROUPNODE FindNode( PGROUPNODE pNode,CString szName);
};

#endif // !defined(AFX_GROUP_H__6C7550FB_67A6_48CF_AAD9_F8A9D460C3F0__INCLUDED_)

⌨️ 快捷键说明

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