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

📄 gethz.h

📁 支持Windows 3.x、Windows 9x平台上的中文(GB、Big5)、日文(Shift JIS、EUC JIS)、韩文(KS C 5601)、HZ码的显示与输入,智能内码识别
💻 H
字号:
// aview.h : interface of the CAView class
//
/////////////////////////////////////////////////////////////////////////////

//输入法库文件格式结构

#define	CODE_CELL_NUM	94			//码元数目
#define	MAX_NAME_LEN	16		//输入法名的最大长度
#define	MAX_CODE_LEN	12		//最大码长
#define	MAX_PAGE			16
#define	START_CODE			33		//码元表开始的字符

//表头结构
struct	INPUT_LIB_HEAD
{
	DWORD	dwTotalBytes ;		//整个库所占字节数
	DWORD	dwTotalWords ;		//整个库中的词条数目
	char			sName[MAX_NAME_LEN+2] ;		//输入法名,以'\0'结束
	int				nFunctionKey ;		//功能键号
	int				nGodKey ;			//万能键
	int				nMaxCodeLen ;	//最大码长
	
	char		sCodeCells[CODE_CELL_NUM] ;		//码元表,1表示有,0无
	DWORD	dwIndex[CODE_CELL_NUM] ;	//首码索引表
} ;		

//输入法库类
class	CInputLib
{
	public:
		char huge	*m_hpsLib ;			//库指针
		DWORD	m_dwLibLen ;	//库长度
		INPUT_LIB_HEAD far	*m_lpLibHead ;	//库头
		
		char huge	*m_hpsContent ;	//内容指针
		char huge	*m_hpsPage ;	//翻页指针
		DWORD	m_dwContent ;	//判断内容指针是否已经到库尾
		DWORD	m_dwPage ;		//判断翻页指针是否已经到库尾

		int				m_nCheckedNum ;	//已经检索过的字母数
		int				m_nScrolledPage ;	//翻过的页数
		//内容指针,指向每个字母开始处		
		DWORD	m_dwContentPoint[MAX_CODE_LEN] ;
		//页指针,指向每页开始处
		DWORD	m_dwPagePoint[MAX_PAGE] ;
	public:
		CInputLib( void ) ;
		~CInputLib( void ) ;
	
		//装入输入法库
		BOOL	LoadInputLib( LPCSTR lpsLibName ) ;
		void	UnloadInputLib( void ) ;	//释放输入法库
} ;

//------------------------------------------------------------------//
#ifdef __cplusplus
extern "C" {
#endif

int	ArrangeOutHz( LPCSTR lpsEnglish , int nEnglishLen ,
							LPSTR lpsChinese , int nMaxChinese , 
							LPINT lpnChineseLen , int nFlag ) ;
int	SetHzString( LPCSTR lpsEnglish , int nEnglishLen ,
							LPSTR lpsChinese , int nMaxChinese , 
							LPINT lpnChineseLen ) ;

#ifdef __cplusplus
}
#endif

⌨️ 快捷键说明

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