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

📄 索引技术dlg.h

📁 是当初的数据结构的做业,用的是b+树这一块,非常值得初学者的参考
💻 H
字号:
// 索引技术Dlg.h : header file
//

#if !defined(AFX_DLG_H__A6ED258E_10D4_4A25_8508_99884D350541__INCLUDED_)
#define AFX_DLG_H__A6ED258E_10D4_4A25_8508_99884D350541__INCLUDED_
#include "TransParentButton.h"
#include "label.h"
#include "FTTree.h"
#include "node.h"
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

/////////////////////////////////////////////////////////////////////////////
// CMyDlg dialog

class CMyDlg : public CDialog
{
// Construction
public:
	int m_retval[21];
	CRect splitenoderect[21];
	//
	bool invalidate();//用于刷新显示
	bool find(FTNode*subroot,int inert);//查找指点记录insert,FTNode为查找的结点
	bool Help(int lag,int insert=-1);//insert用于设置插入的值,lag用来表示需要高亮显示的listbox行
     int m_time;//time that delay需要延迟的时间参数
	void timedelay(int lag);//延迟时间的函数,用二重循环
	bool splitenode(FTNode*& subroot,const int & inval ,FTNode *inptr,int & retval, FTNode*& retptr,int num);//分裂结点,纯分裂代码
	bool insert(FTNode*& subroot,const int & e ,int &retval, FTNode*& retptr,int num);//插入代码
    void Traval(CPaintDC & dc,CRect rect[],Node noderect[],FTNode *subroot,int num,int & insert);//周游代码
	CMyDlg(CWnd* pParent = NULL);	// standard constructor
    bool PrintTree(CPaintDC &dc,CRect rect[],Node noderect[],FTNode *subroot,int num);//打印树的函数
// Dialog Data
	//{{AFX_DATA(CMyDlg)
	enum { IDD = IDD_MY_DIALOG };
	CEdit	m_edit;//文本框的成员对象
	CTransParentButton	m_btn8;//按纽的成员对象,用于摁扭的特殊效果,下同
	CTransParentButton	m_btn7;//按纽的成员对象
	CTransParentButton	m_btn6;//按纽的成员对象
	CTransParentButton	m_btn5;
	CTransParentButton	m_btn4;
	CTransParentButton	m_btn3;
	CTransParentButton	m_btn2;
	CTransParentButton	m_btn1;
    CLabel m_3D;//静态文本的成员对象,用于静态文本的特殊效果,下同
	CLabel m_3D2;
	CLabel m_3D3;
    int	m_num;//表示文本控件的数据
	int m_insert;//表示要插入的数据
	int m_state;//表示状态0表示插入,1表示查找,-1表示等待
    int insertplace;//记录待插的元素要显示的位置
    int insertval;//记录待显示的值
    bool traval;//标志是否要遍历
    bool m_stop;//标志是否要暂停
    CString state;//表示运行状态,用于静态文本
    CString PathName;//表示代码‘code.txt’,‘find.txt’文本所在的路件
    CRect insertrect[21];//表示结点的显示区域的起始位置
    CRect rect;//动态显示区的范围
    CRect rct[240];//显示区域的位置
    CRect noderct[21];//待插的数据的显示位置
    CRect validate[3];//从上至下的结点区域
    Node node[21];//待显示的结点
    FTTree tree;//b对象
   
	//}}AFX_DATA
   
   // ClassWizard generated virtual function overrides
   //{{AFX_VIRTUAL(CMyDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	HICON m_hIcon;

	// Generated message map functions
	//{{AFX_MSG(CMyDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg void OnDestroy();
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	afx_msg void OnButton6();//退出
	afx_msg void OnTimer(UINT nIDEvent);
	afx_msg void Oninsert();//插入
	afx_msg void Onfind();//查找
	afx_msg void Onrun();//运行函数
	afx_msg void OnSpeedCtrl();//控制执行速度
	afx_msg void OnRadom();//数据随机化函数
	afx_msg void OnStop();//暂停函数
	afx_msg void OnTraval();//树的周游
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_DLG_H__A6ED258E_10D4_4A25_8508_99884D350541__INCLUDED_)

⌨️ 快捷键说明

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