ime.h文件
#ifndef _H_IME_
#define _H_IME_
#define IDC_NovaSKB1 (MY_USR_NUM*2+0)
#define IDC_NovaSKB2 (MY_USR_NUM*2+1)
#define IDC_NovaSKB3 (MY_USR_NUM*2+2)
#define IDC_NovaSKB4 (MY_USR_NUM*2+3)
#define IDC_NovaSKB5 (MY_USR_NUM*2+4)
#define ITEM_NUM1 14 // coolbar 第一行的数量
#define ITEM_NUM2 14 // coolbar 第2行的数量
#define ITEM_NUM3 12 // coolbar 第3行的数量
#define ITEM_NUM4 12 // coolbar 第4行的数量
#define ITEM_NUM5 8 //coolbar 第5行的数量
#define SKB_WIDTH (405)
#define SKB_HIGH (22)
#define SKB_START_X (240)
#define SKB_START_Y (278)
static WNDPROC old_novaskb_proc; //old proc 函数指针
static WNDPROC old_ime_proc; //old ime proc
//关闭屏幕键盘
#ifndef MSG_CLOSE_SCREEN_KB
#define MSG_CLOSE_SCREEN_KB (MSG_USER+100)
#endif
//打开屏幕键盘
#ifndef MSG_OPEN_SCREEN_KB
#define MSG_OPEN_SCREEN_KB (MSG_USER+101)
#endif
/************************************************************************************************************************************************************************************************
************************************************************************************************************************************************************************************************
*******************************************************************************************************************************************************************************************/
//输入法头文件定义部分
/************************************************************************************************************************************************************************************************
*******************************************************************************************************************************************************************************************
************************************************************************************************************************************************************************************************/
/************************************************************************************************************************************************************************************************
输入法第一行定义
*******************************************************************************************************************************************************************************************/
static const char* caption1[] =
{
" ` ", " 1 ", " 2 ", " 3 ", " 4 ", " 5 "," 6 ", " 7 ", " 8 ", " 9 ", " 0 ", " - ", " = ", " <- "
};
static const int SCANCODE1[] =
{
SCANCODE_GRAVE, SCANCODE_1, SCANCODE_2, SCANCODE_3, SCANCODE_4,
SCANCODE_5, SCANCODE_6, SCANCODE_7, SCANCODE_8, SCANCODE_9,
SCANCODE_0, SCANCODE_MINUS, SCANCODE_EQUAL, SCANCODE_BACKSPACE
};
/************************************************************************************************************************************************************************************************
输入法第二行定义
*******************************************************************************************************************************************************************************************/
static const char* caption2[] =
{
"Tab", " q ", " w ", " e ", " r ", " t "," y ", " u ", " i ", " o ", " p ", " [ ", " ] ", " // "
};
static const int SCANCODE2[] =
{
SCANCODE_TAB, SCANCODE_Q, SCANCODE_W, SCANCODE_E, SCANCODE_R,
SCANCODE_T, SCANCODE_