|
| |
Пост N: 6
Зарегистрирован: 07.06.08
|
|
Отправлено: 16.06.09 10:51. Заголовок: ALT_русские буквы и PAD_5 в gtwin (xHarbour 1.0.0)
Подключил ALT_Русские буквы и PAD (K_PAD_5 332 // PAD5) в gtwin xHarbour 1.0.0. Может быть кому-то пригодится. 1.Добавляем коды клавиш #define CLIP_STDKEY_COUNT 160 // вместо 96 В static const ClipKeyCode stdKeyTab[CLIP_STDKEY_COUNT] = { добавляем коды {128, K_ALT_F, K_CTRL_F, 0, K_ALT_F}, // 'А' {129, 0, 0, 0, 0}, // 'Б' {130, K_ALT_D, K_CTRL_D, 0, K_ALT_D}, // 'В' {131, K_ALT_U, K_CTRL_U, 0, K_ALT_U}, // 'Г' {132, K_ALT_L, K_CTRL_L, 0, K_ALT_L}, // 'Д' {133, K_ALT_T, K_CTRL_T, 0, K_ALT_T}, // 'Е' {134, 0, 0, 0, 0}, // 'Ж' {135, K_ALT_P, K_CTRL_P, 0, K_ALT_P}, // 'З' {136, K_ALT_B, K_CTRL_B, 0, K_ALT_B}, // 'И' {137, K_ALT_Q, K_CTRL_Q, 0, K_ALT_Q}, // 'Й' {138, K_ALT_R, K_CTRL_R, 0, K_ALT_R}, // 'К' {139, K_ALT_K, K_CTRL_K, 0, K_ALT_K}, // 'Л' {140, K_ALT_V, K_CTRL_V, 0, K_ALT_V}, // 'М' {141, K_ALT_Y, K_CTRL_Y, 0, K_ALT_Y}, // 'Н' {142, K_ALT_J, K_CTRL_J, 0, K_ALT_J}, // 'О' {143, K_ALT_G, K_CTRL_G, 0, K_ALT_G}, // 'П' {144, K_ALT_H, K_CTRL_H, 0, K_ALT_H}, // 'Р' {145, K_ALT_C, K_CTRL_C, 0, K_ALT_C}, // 'С' {146, K_ALT_N, K_CTRL_N, 0, K_ALT_N}, // 'Т' {147, K_ALT_E, K_CTRL_E, 0, K_ALT_E}, // 'У' {148, K_ALT_A, K_CTRL_A, 0, K_ALT_A}, // 'Ф' {149, 282, 27, 0, 0}, // 'Х' {150, K_ALT_W, K_CTRL_W, 0, K_ALT_W}, // 'Ц' {151, K_ALT_X, K_CTRL_X, 0, K_ALT_X}, // 'Ч' {152, K_ALT_I, K_CTRL_I, 0, K_ALT_I}, // 'Ш' {153, K_ALT_O, K_CTRL_O, 0, K_ALT_O}, // 'Щ' {154, 283, 29, 0, 0}, // 'Ъ' {155, K_ALT_S, K_CTRL_S, 0, K_ALT_S}, // 'Ы' {156, K_ALT_M, K_CTRL_M, 0, K_ALT_M}, // 'Ь' {157, 0, 0, 0, 0}, // 'Э' {158, 0, 0, 0, 0}, // 'Ю' {159, K_ALT_Z, K_CTRL_Z, 0, K_ALT_Z}, // 'Я' {160, K_ALT_F, K_CTRL_F, 0, K_ALT_F}, // 'а' {161, 0, 0, 0, 0}, // 'б' {162, K_ALT_D, K_CTRL_D, 0, K_ALT_D}, // 'в' {163, K_ALT_U, K_CTRL_U, 0, K_ALT_U}, // 'г' {164, K_ALT_L, K_CTRL_L, 0, K_ALT_L}, // 'д' {165, K_ALT_T, K_CTRL_T, 0, K_ALT_T}, // 'е' {166, 0, 0, 0, 0}, // 'ж' {167, K_ALT_P, K_CTRL_P, 0, K_ALT_P}, // 'з' {168, K_ALT_B, K_CTRL_B, 0, K_ALT_B}, // 'и' {169, K_ALT_Q, K_CTRL_Q, 0, K_ALT_Q}, // 'й' {170, K_ALT_R, K_CTRL_R, 0, K_ALT_R}, // 'к' {171, K_ALT_K, K_CTRL_K, 0, K_ALT_K}, // 'л' {172, K_ALT_V, K_CTRL_V, 0, K_ALT_V}, // 'м' {173, K_ALT_Y, K_CTRL_Y, 0, K_ALT_Y}, // 'н' {174, K_ALT_J, K_CTRL_J, 0, K_ALT_J}, // 'о' {175, K_ALT_G, K_CTRL_G, 0, K_ALT_G}, // 'п' {224, K_ALT_H, K_CTRL_H, 0, K_ALT_H}, // 'р' {225, K_ALT_C, K_CTRL_C, 0, K_ALT_C}, // 'с' {226, K_ALT_N, K_CTRL_N, 0, K_ALT_N}, // 'т' {227, K_ALT_E, K_CTRL_E, 0, K_ALT_E}, // 'у' {228, K_ALT_A, K_CTRL_A, 0, K_ALT_A}, // 'ф' {229, 282, 27, 0, 0}, // 'х' {230, K_ALT_W, K_CTRL_W, 0, K_ALT_W}, // 'ц' {231, K_ALT_X, K_CTRL_X, 0, K_ALT_X}, // 'ч' {232, K_ALT_I, K_CTRL_I, 0, K_ALT_I}, // 'ш' {233, K_ALT_O, K_CTRL_O, 0, K_ALT_O}, // 'щ' {234, 283, 29, 0, 0}, // 'ъ' {235, K_ALT_S, K_CTRL_S, 0, K_ALT_S}, // 'ы' {236, K_ALT_M, K_CTRL_M, 0, K_ALT_M}, // 'ь' {237, 0, 0, 0, 0}, // 'э' {238, 0, 0, 0, 0}, // 'ю' {239, K_ALT_Z, K_CTRL_Z, 0, K_ALT_Z}, // 'я' после else if ( ch < 0 ) // international keys { ch += 256; Добавляем if (ch>223) { clipKey = &stdKeyTab[ ch - K_SPACE-48]; } else { clipKey = &stdKeyTab[ ch - K_SPACE]; } } 2.Для подключения K_PAD в функцию int HB_GT_FUNC(gt_ReadKey( HB_inkey_enum eventmask )) преред if ( s_bSpecialKeyHandling && ( dwState & CAPSLOCK_ON ) && s_osv.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS ) { вставляем строки if (wKey==76 & s_irInBuf[ s_cNumIndex ].Event.KeyEvent.wVirtualKeyCode==12) { ch=332; }
|