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

📄 keyboard_pro.c

📁 详细的MiniGUI源代码
💻 C
📖 第 1 页 / 共 2 页
字号:
/*	Copyright (C) 2004-2005 Li Yudong*//*** This program is free software; you can redistribute it and/or modify** it under the terms of the GNU General Public License as published by** the Free Software Foundation; either version 2 of the License, or** (at your option) any later version.**** This program is distributed in the hope that it will be useful,** but WITHOUT ANY WARRANTY; without even the implied warranty of** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the** GNU General Public License for more details.**** You should have received a copy of the GNU General Public License** along with this program; if not, write to the Free Software** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA*/#include "../include/common.h"#include "../include/bmp.h"#include "../include/regclass.h"#include "../include/hdc.h"#include "../include/keyboard_pro.h"#include "../include/skbwin.h"#include "../include/gdi.h"#include "../include/rect.h"#include "../include/message.h"#include "../include/blockheap.h"#include "../include/invalidregion.h"#include "../include/clipregion.h"#include "../include/caret.h"#include "../include/winnc.h"#include "../include/winbase.h"#include "../include/window.h"#include "../include/text.h"#include "../include/lguiapp.h"#include "../include/imewin.h"static LGUIKBDefine lguiKBDefine;extern PWindowsTree _lGUI_pImeWindow;	static intGetIndexByScanCode(	int iScanCode);	voidInitLGUIKBDefine (){	BOOL bShift;	BOOL bCapsLock;	BOOL bCtrl;	BOOL bAlt;	lguiKBDefine.bShift = false;	lguiKBDefine.bCapsLock = false;	lguiKBDefine.bCtrl = false;	lguiKBDefine.bAlt = false;		lguiKBDefine.kbRetValue[0].iScanCode = SCANCODE_ESCAPE;	lguiKBDefine.kbRetValue[1].iScanCode = SCANCODE_WAVE;	lguiKBDefine.kbRetValue[2].iScanCode = SCANCODE_1;	lguiKBDefine.kbRetValue[3].iScanCode = SCANCODE_2;	lguiKBDefine.kbRetValue[4].iScanCode = SCANCODE_3;	lguiKBDefine.kbRetValue[5].iScanCode = SCANCODE_4;	lguiKBDefine.kbRetValue[6].iScanCode = SCANCODE_5;	lguiKBDefine.kbRetValue[7].iScanCode = SCANCODE_6;	lguiKBDefine.kbRetValue[8].iScanCode = SCANCODE_7;	lguiKBDefine.kbRetValue[9].iScanCode = SCANCODE_8;	lguiKBDefine.kbRetValue[10].iScanCode = SCANCODE_9;	lguiKBDefine.kbRetValue[11].iScanCode = SCANCODE_0;	lguiKBDefine.kbRetValue[12].iScanCode = SCANCODE_MINUS;	lguiKBDefine.kbRetValue[13].iScanCode = SCANCODE_EQUAL;	lguiKBDefine.kbRetValue[14].iScanCode = SCANCODE_BACKSPACE;	lguiKBDefine.kbRetValue[15].iScanCode = SCANCODE_TAB;	lguiKBDefine.kbRetValue[16].iScanCode = SCANCODE_Q;	lguiKBDefine.kbRetValue[17].iScanCode = SCANCODE_W;	lguiKBDefine.kbRetValue[18].iScanCode = SCANCODE_E;	lguiKBDefine.kbRetValue[19].iScanCode = SCANCODE_R;	lguiKBDefine.kbRetValue[20].iScanCode = SCANCODE_T;	lguiKBDefine.kbRetValue[21].iScanCode = SCANCODE_Y;	lguiKBDefine.kbRetValue[22].iScanCode = SCANCODE_U;	lguiKBDefine.kbRetValue[23].iScanCode = SCANCODE_I;	lguiKBDefine.kbRetValue[24].iScanCode = SCANCODE_O;	lguiKBDefine.kbRetValue[25].iScanCode = SCANCODE_P;	lguiKBDefine.kbRetValue[26].iScanCode = SCANCODE_BRACKET_LEFT;	lguiKBDefine.kbRetValue[27].iScanCode = SCANCODE_BRACKET_RIGHT;	lguiKBDefine.kbRetValue[28].iScanCode = SCANCODE_BACKSLASH;	lguiKBDefine.kbRetValue[29].iScanCode = SCANCODE_CAPSLOCK;	lguiKBDefine.kbRetValue[30].iScanCode = SCANCODE_A;	lguiKBDefine.kbRetValue[31].iScanCode = SCANCODE_S;	lguiKBDefine.kbRetValue[32].iScanCode = SCANCODE_D;	lguiKBDefine.kbRetValue[33].iScanCode = SCANCODE_F;	lguiKBDefine.kbRetValue[34].iScanCode = SCANCODE_G;	lguiKBDefine.kbRetValue[35].iScanCode = SCANCODE_H;	lguiKBDefine.kbRetValue[36].iScanCode = SCANCODE_J;	lguiKBDefine.kbRetValue[37].iScanCode = SCANCODE_K;	lguiKBDefine.kbRetValue[38].iScanCode = SCANCODE_L;	lguiKBDefine.kbRetValue[39].iScanCode = SCANCODE_SEMICOLON;	lguiKBDefine.kbRetValue[40].iScanCode = SCANCODE_APOSTROPHE;	lguiKBDefine.kbRetValue[41].iScanCode = SCANCODE_ENTER;	lguiKBDefine.kbRetValue[42].iScanCode = SCANCODE_LEFTSHIFT;	lguiKBDefine.kbRetValue[43].iScanCode = SCANCODE_Z;	lguiKBDefine.kbRetValue[44].iScanCode = SCANCODE_X;	lguiKBDefine.kbRetValue[45].iScanCode = SCANCODE_C;	lguiKBDefine.kbRetValue[46].iScanCode = SCANCODE_V;	lguiKBDefine.kbRetValue[47].iScanCode = SCANCODE_B;	lguiKBDefine.kbRetValue[48].iScanCode = SCANCODE_N;	lguiKBDefine.kbRetValue[49].iScanCode = SCANCODE_M;	lguiKBDefine.kbRetValue[50].iScanCode = SCANCODE_COMMA;	lguiKBDefine.kbRetValue[51].iScanCode = SCANCODE_PERIOD;	lguiKBDefine.kbRetValue[52].iScanCode = SCANCODE_SLASH;	lguiKBDefine.kbRetValue[53].iScanCode = SCANCODE_RIGHTSHIFT;	lguiKBDefine.kbRetValue[54].iScanCode = SCANCODE_LEFTCONTROL;	lguiKBDefine.kbRetValue[55].iScanCode = SCANCODE_LEFTALT;	lguiKBDefine.kbRetValue[56].iScanCode = SCANCODE_SPACE;	lguiKBDefine.kbRetValue[57].iScanCode = SCANCODE_RIGHTALT;	lguiKBDefine.kbRetValue[58].iScanCode = SCANCODE_RIGHTCONTROL;	lguiKBDefine.kbRetValue[59].iScanCode = SCANCODE_EXTPAD;		lguiKBDefine.kbRetValue[60].iScanCode = SCANCODE_HOME;	lguiKBDefine.kbRetValue[61].iScanCode = SCANCODE_END;	lguiKBDefine.kbRetValue[62].iScanCode = SCANCODE_INS;	lguiKBDefine.kbRetValue[63].iScanCode = SCANCODE_DEL;	lguiKBDefine.kbRetValue[64].iScanCode = SCANCODE_PAGEUP;	lguiKBDefine.kbRetValue[65].iScanCode = SCANCODE_PAGEDOWN;	lguiKBDefine.kbRetValue[66].iScanCode = SCANCODE_LEFT;	lguiKBDefine.kbRetValue[67].iScanCode = SCANCODE_RIGHT;	lguiKBDefine.kbRetValue[68].iScanCode = SCANCODE_UP;	lguiKBDefine.kbRetValue[69].iScanCode = SCANCODE_DOWN;	lguiKBDefine.kbRetValue[0].bRetChar	= false;	lguiKBDefine.kbRetValue[1].bRetChar	= true;	lguiKBDefine.kbRetValue[1].NormalValue	= '`';	lguiKBDefine.kbRetValue[1].ShiftValue	= '~';	lguiKBDefine.kbRetValue[2].bRetChar	= true;	lguiKBDefine.kbRetValue[2].NormalValue	= '1';	lguiKBDefine.kbRetValue[2].ShiftValue	= '!';	lguiKBDefine.kbRetValue[3].bRetChar	= true;	lguiKBDefine.kbRetValue[3].NormalValue	= '2';	lguiKBDefine.kbRetValue[3].ShiftValue	= '@';	lguiKBDefine.kbRetValue[4].bRetChar	= true;	lguiKBDefine.kbRetValue[4].NormalValue	= '3';	lguiKBDefine.kbRetValue[4].ShiftValue	= '#';	lguiKBDefine.kbRetValue[5].bRetChar	= true;	lguiKBDefine.kbRetValue[5].NormalValue	= '4';	lguiKBDefine.kbRetValue[5].ShiftValue	= '$';	lguiKBDefine.kbRetValue[6].bRetChar	= true;	lguiKBDefine.kbRetValue[6].NormalValue	= '5';	lguiKBDefine.kbRetValue[6].ShiftValue	= '%';	lguiKBDefine.kbRetValue[7].bRetChar	= true;	lguiKBDefine.kbRetValue[7].NormalValue	= '6';	lguiKBDefine.kbRetValue[7].ShiftValue	= '^';	lguiKBDefine.kbRetValue[8].bRetChar	= true;	lguiKBDefine.kbRetValue[8].NormalValue	= '7';	lguiKBDefine.kbRetValue[8].ShiftValue	= '&';	lguiKBDefine.kbRetValue[9].bRetChar	= true;	lguiKBDefine.kbRetValue[9].NormalValue	= '8';	lguiKBDefine.kbRetValue[9].ShiftValue	= '*';	lguiKBDefine.kbRetValue[10].bRetChar	= true;	lguiKBDefine.kbRetValue[10].NormalValue	= '9';	lguiKBDefine.kbRetValue[10].ShiftValue	= '(';	lguiKBDefine.kbRetValue[11].bRetChar	= true;	lguiKBDefine.kbRetValue[11].NormalValue	= '0';	lguiKBDefine.kbRetValue[11].ShiftValue	= ')';	lguiKBDefine.kbRetValue[12].bRetChar	= true;	lguiKBDefine.kbRetValue[12].NormalValue	= '-';	lguiKBDefine.kbRetValue[12].ShiftValue	= '_';	lguiKBDefine.kbRetValue[13].bRetChar	= true;	lguiKBDefine.kbRetValue[13].NormalValue	= '=';	lguiKBDefine.kbRetValue[13].ShiftValue	= '+';	lguiKBDefine.kbRetValue[14].bRetChar	= true;//backspace  send char  	lguiKBDefine.kbRetValue[14].NormalValue	= 8;	lguiKBDefine.kbRetValue[14].ShiftValue	= 8;		lguiKBDefine.kbRetValue[15].bRetChar	= false;//tab	lguiKBDefine.kbRetValue[16].bRetChar	= true;	lguiKBDefine.kbRetValue[16].NormalValue	= 'q';	lguiKBDefine.kbRetValue[16].ShiftValue	= 'Q';	lguiKBDefine.kbRetValue[17].bRetChar	= true;	lguiKBDefine.kbRetValue[17].NormalValue	= 'w';	lguiKBDefine.kbRetValue[17].ShiftValue	= 'W';	lguiKBDefine.kbRetValue[18].bRetChar	= true;	lguiKBDefine.kbRetValue[18].NormalValue	= 'e';	lguiKBDefine.kbRetValue[18].ShiftValue	= 'E';	lguiKBDefine.kbRetValue[19].bRetChar	= true;	lguiKBDefine.kbRetValue[19].NormalValue	= 'r';	lguiKBDefine.kbRetValue[19].ShiftValue	= 'R';	lguiKBDefine.kbRetValue[20].bRetChar	= true;	lguiKBDefine.kbRetValue[20].NormalValue	= 't';	lguiKBDefine.kbRetValue[20].ShiftValue	= 'T';	lguiKBDefine.kbRetValue[21].bRetChar	= true;	lguiKBDefine.kbRetValue[21].NormalValue	= 'y';	lguiKBDefine.kbRetValue[21].ShiftValue	= 'Y';	lguiKBDefine.kbRetValue[22].bRetChar	= true;	lguiKBDefine.kbRetValue[22].NormalValue	= 'u';	lguiKBDefine.kbRetValue[22].ShiftValue	= 'U';	lguiKBDefine.kbRetValue[23].bRetChar	= true;	lguiKBDefine.kbRetValue[23].NormalValue	= 'i';	lguiKBDefine.kbRetValue[23].ShiftValue	= 'I';	lguiKBDefine.kbRetValue[24].bRetChar	= true;	lguiKBDefine.kbRetValue[24].NormalValue	= 'o';	lguiKBDefine.kbRetValue[24].ShiftValue	= 'O';	lguiKBDefine.kbRetValue[25].bRetChar	= true;	lguiKBDefine.kbRetValue[25].NormalValue	= 'p';	lguiKBDefine.kbRetValue[25].ShiftValue	= 'P';	lguiKBDefine.kbRetValue[26].bRetChar	= true;	lguiKBDefine.kbRetValue[26].NormalValue	= '[';	lguiKBDefine.kbRetValue[26].ShiftValue	= '{';	lguiKBDefine.kbRetValue[27].bRetChar	= true;	lguiKBDefine.kbRetValue[27].NormalValue	= ']';	lguiKBDefine.kbRetValue[27].ShiftValue	= '}';	lguiKBDefine.kbRetValue[28].bRetChar	= true;	lguiKBDefine.kbRetValue[28].NormalValue	= '\\';	lguiKBDefine.kbRetValue[28].ShiftValue	= '|';	lguiKBDefine.kbRetValue[29].bRetChar	= false;

⌨️ 快捷键说明

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