tkeyboarddirect.cpp.svn-base
来自「ffshow源码」· SVN-BASE 代码 · 共 1,032 行 · 第 1/3 页
SVN-BASE
1,032 行
false,/*CF*/_l(""),false,/*D0*/_l(""),false,/*D1*/_l(""),false,/*D2*/_l(""),false,/*D3*/_l(""),false,/*D4*/_l(""),false,/*D5*/_l(""),false,/*D6*/_l(""),false,/*D7*/_l(""),false,/*D8*/_l(""),false,/*D9*/_l(""),false,/*DA*/_l(""),true ,/*DB*/_l("["),true ,/*DC*/_l("\\"),true ,/*DD*/_l("]"),true ,/*DE*/_l("'"),false,/*DF*/_l("VK_OEM_8"),false,/*E0*/_l(""),false,/*E1*/_l("VK_OEM_AX"),false,/*E2*/_l("VK_OEM_102"),false,/*E3*/_l("VK_ICO_HELP"),false,/*E4*/_l("VK_ICO_00"),false,/*E5*/_l("VK_PROCESSKEY"),false,/*E6*/_l("VK_ICO_CLEAR"),false,/*E7*/_l("VK_PACKET"),false,/*E8*/_l(""),false,/*E9*/_l("VK_OEM_RESET"),false,/*EA*/_l("VK_OEM_JUMP"),false,/*EB*/_l("VK_OEM_PA1"),false,/*EC*/_l("VK_OEM_PA2"),false,/*ED*/_l("VK_OEM_PA3"),false,/*EE*/_l("VK_OEM_WSCTRL"),false,/*EF*/_l("VK_OEM_CUSEL"),false,/*F0*/_l("VK_OEM_ATTN"),false,/*F1*/_l("VK_OEM_FINISH"),false,/*F2*/_l("VK_OEM_COPY"),false,/*F3*/_l("VK_OEM_AUTO"),false,/*F4*/_l("VK_OEM_ENLW"),false,/*F5*/_l("VK_OEM_BACKTAB"),false,/*F6*/_l("VK_ATTN"),false,/*F7*/_l("VK_CRSEL"),false,/*F8*/_l("VK_EXSEL"),false,/*F9*/_l("VK_EREOF"),false,/*FA*/_l("VK_PLAY"),false,/*FB*/_l("VK_ZOOM"),false,/*FC*/_l("VK_NONAME"),false,/*FD*/_l("VK_PA1"),false,/*FE*/_l("VK_OEM_CLEAR"),false,/*FF*/_l("")};const unsigned char Tkeyboard::vk2dik[256]={/*00 */ 0,/*01 VK_LBUTTON */ 0,/*02 VK_RBUTTON */ 0,/*03 VK_CANCEL */ 0,/*04 VK_MBUTTON */ 0,/*05 VK_XBUTTON1 */ 0,/*06 VK_XBUTTON2 */ 0,/*07 */ 0,/*08 VK_BACK */ DIK_BACK,/*09 VK_TAB */ DIK_TAB,/*0A */ 0,/*0B */ 0,/*0C VK_CLEAR */ 0,/*0D VK_RETURN */ DIK_RETURN,/*0E */ 0,/*0F */ 0,/*10 VK_SHIFT */ DIK_LSHIFT,/*11 VK_CONTROL */ DIK_LCONTROL,/*12 VK_MENU */ DIK_LMENU,/*13 VK_PAUSE */ DIK_PAUSE,/*14 VK_CAPITAL */ DIK_CAPITAL,/*15 VK_HANGUL */ 0,/*16 */ 0,/*17 VK_JUNJA */ 0,/*18 VK_FINAL */ 0,/*19 VK_HANJA */ 0,/*1A */ 0,/*1B VK_ESCAPE */ DIK_ESCAPE,/*1C VK_CONVERT */ DIK_CONVERT,/*1D VK_NONCONVERT */ DIK_NOCONVERT,/*1E VK_ACCEPT */ 0,/*1F VK_MODECHANGE */ 0,/*20 VK_SPACE */ DIK_SPACE,/*21 VK_PRIOR */ DIK_PRIOR,/*22 VK_NEXT */ DIK_NEXT,/*23 VK_END */ DIK_END,/*24 VK_HOME */ DIK_HOME,/*25 VK_LEFT */ DIK_LEFT,/*26 VK_UP */ DIK_UP,/*27 VK_RIGHT */ DIK_RIGHT,/*28 VK_DOWN */ DIK_DOWN,/*29 VK_SELECT */ 0,/*2A VK_PRINT */ 0,/*2B VK_EXECUTE */ 0,/*2C VK_SNAPSHOT */ 0,/*2D VK_INSERT */ DIK_INSERT,/*2E VK_DELETE */ DIK_DELETE,/*2F VK_HELP */ 0,/*30 0 */ DIK_0,/*31 1 */ DIK_1,/*32 2 */ DIK_2,/*33 3 */ DIK_3,/*34 4 */ DIK_4,/*35 5 */ DIK_5,/*36 6 */ DIK_6,/*37 7 */ DIK_7,/*38 8 */ DIK_8,/*39 9 */ DIK_9,/*3A */ 0,/*3B */ 0,/*3C */ 0,/*3D */ 0,/*3E */ 0,/*3F */ 0,/*40 */ 0,/*41 A */ DIK_A,/*42 B */ DIK_B,/*43 C */ DIK_C,/*44 D */ DIK_D,/*45 E */ DIK_E,/*46 F */ DIK_F,/*47 G */ DIK_G,/*48 H */ DIK_H,/*49 I */ DIK_I,/*4A J */ DIK_J,/*4B K */ DIK_K,/*4C L */ DIK_L,/*4D M */ DIK_M,/*4E N */ DIK_N,/*4F O */ DIK_O,/*50 P */ DIK_P,/*51 Q */ DIK_Q,/*52 R */ DIK_R,/*53 S */ DIK_S,/*54 T */ DIK_T,/*55 U */ DIK_U,/*56 V */ DIK_V,/*57 W */ DIK_W,/*58 X */ DIK_X,/*59 Y */ DIK_Y,/*5A Z */ DIK_Z,/*5B VK_LWIN */ DIK_LWIN,/*5C VK_RWIN */ DIK_RWIN,/*5D VK_APPS */ DIK_APPS,/*5E */ 0,/*5F VK_SLEEP */ DIK_SLEEP,/*60 VK_NUMPAD0 */ DIK_NUMPAD0,/*61 VK_NUMPAD1 */ DIK_NUMPAD1,/*62 VK_NUMPAD2 */ DIK_NUMPAD2,/*63 VK_NUMPAD3 */ DIK_NUMPAD3,/*64 VK_NUMPAD4 */ DIK_NUMPAD4,/*65 VK_NUMPAD5 */ DIK_NUMPAD5,/*66 VK_NUMPAD6 */ DIK_NUMPAD6,/*67 VK_NUMPAD7 */ DIK_NUMPAD7,/*68 VK_NUMPAD8 */ DIK_NUMPAD8,/*69 VK_NUMPAD9 */ DIK_NUMPAD9,/*6A VK_MULTIPLY */ DIK_MULTIPLY,/*6B VK_ADD */ DIK_ADD,/*6C VK_SEPARATOR */ 0,/*6D VK_SUBTRACT */ DIK_SUBTRACT,/*6E VK_DECIMAL */ DIK_DECIMAL,/*6F VK_DIVIDE */ DIK_DIVIDE,/*70 VK_F1 */ DIK_F1,/*71 VK_F2 */ DIK_F2,/*72 VK_F3 */ DIK_F3,/*73 VK_F4 */ DIK_F4,/*74 VK_F5 */ DIK_F5,/*75 VK_F6 */ DIK_F6,/*76 VK_F7 */ DIK_F7,/*77 VK_F8 */ DIK_F8,/*78 VK_F9 */ DIK_F9,/*79 VK_F10 */ DIK_F10,/*7A VK_F11 */ DIK_F11,/*7B VK_F12 */ DIK_F12,/*7C VK_F13 */ DIK_F13,/*7D VK_F14 */ DIK_F14,/*7E VK_F15 */ DIK_F15,/*7F VK_F16 */ 0,/*80 VK_F17 */ 0,/*81 VK_F18 */ 0,/*82 VK_F19 */ 0,/*83 VK_F20 */ 0,/*84 VK_F21 */ 0,/*85 VK_F22 */ 0,/*86 VK_F23 */ 0,/*87 VK_F24 */ 0,/*88 */ 0,/*89 */ 0,/*8A */ 0,/*8B */ 0,/*8C */ 0,/*8D */ 0,/*8E */ 0,/*8F */ 0,/*90 VK_NUMLOCK */ DIK_NUMLOCK,/*91 VK_SCROLL */ DIK_SCROLL,/*92 VK_OEM_FJ_JISHO */ 0,/*93 VK_OEM_FJ_MASSHOU */ 0,/*94 VK_OEM_FJ_TOUROKU */ 0,/*95 VK_OEM_FJ_LOYA */ 0,/*96 VK_OEM_FJ_ROYA */ 0,/*97 */ 0,/*98 */ 0,/*99 */ 0,/*9A */ 0,/*9B */ 0,/*9C */ 0,/*9D */ 0,/*9E */ 0,/*9F */ 0,/*A0 VK_LSHIFT */ DIK_LSHIFT,/*A1 VK_RSHIFT */ DIK_RSHIFT,/*A2 VK_LCONTROL */ DIK_LCONTROL,/*A3 VK_RCONTROL */ DIK_RCONTROL,/*A4 VK_LMENU */ DIK_LMENU,/*A5 VK_RMENU */ DIK_RMENU,/*A6 K_BROWSER_BACK */ DIK_WEBBACK,/*A7 K_BROWSER_FORWARD */ DIK_WEBFORWARD,/*A8 K_BROWSER_REFRESH */ DIK_WEBREFRESH,/*A9 K_BROWSER_STOP */ DIK_WEBSTOP,/*AA K_BROWSER_SEARCH */ DIK_WEBSEARCH,/*AB,K_BROWSER_FAVORITES */ DIK_WEBFAVORITES,/*AC K_BROWSER_HOME */ DIK_WEBHOME,/*AD VK_VOLUME_MUTE */ DIK_MUTE,/*AE VK_VOLUME_DOWN */ DIK_VOLUMEDOWN,/*AF VK_VOLUME_UP */ DIK_VOLUMEUP,/*B0 VK_MEDIA_NEXT_TRACK */ DIK_NEXTTRACK,/*B1 VK_MEDIA_PREV_TRACK */ DIK_PREVTRACK,/*B2 VK_MEDIA_STOP */ DIK_MEDIASTOP,/*B3 VK_MEDIA_PLAY_PAUSE */ DIK_PLAYPAUSE,/*B4 VK_LAUNCH_MAIL */ DIK_MAIL,/*B5 VK_LAUNCH_MEDIA_SELECT */ DIK_MEDIASELECT,/*B6 VK_LAUNCH_APP1 */ 0,/*B7 VK_LAUNCH_APP2 */ 0,/*B8 */ 0,/*B9 */ 0,/*BA VK_OEM_1 */ DIK_SEMICOLON,/*BB VK_OEM_PLUS */ DIK_EQUALS,/*BC VK_OEM_COMMA */ DIK_COMMA,/*BD VK_OEM_MINUS */ DIK_MINUS,/*BE VK_OEM_PERIOD */ DIK_PERIOD,/*BF VK_OEM_2 */ DIK_SLASH,/*C0 VK_OEM_3 */ DIK_GRAVE,/*C1 */ 0,/*C2 */ 0,/*C3 */ 0,/*C4 */ 0,/*C5 */ 0,/*C6 */ 0,/*C7 */ 0,/*C8 */ 0,/*C9 */ 0,/*CA */ 0,/*CB */ 0,/*CC */ 0,/*CD */ 0,/*CE */ 0,/*CF */ 0,/*D0 */ 0,/*D1 */ 0,/*D2 */ 0,/*D3 */ 0,/*D4 */ 0,/*D5 */ 0,/*D6 */ 0,/*D7 */ 0,/*D8 */ 0,/*D9 */ 0,/*DA */ 0,/*DB VK_OEM_4 */ DIK_LBRACKET,/*DC VK_OEM_5 */ 0,/*DD VK_OEM_6 */ DIK_RBRACKET,/*DE VK_OEM_7 */ DIK_APOSTROPHE,/*DF VK_OEM_8 */ 0,/*E0 */ 0,/*E1 VK_OEM_AX */ 0,/*E2 VK_OEM_102 */ 0,/*E3 VK_ICO_HELP */ 0,/*E4 VK_ICO_00 */ 0,/*E5 VK_PROCESSKEY */ 0,/*E6 VK_ICO_CLEAR */ 0,/*E7 VK_PACKET */ 0,/*E8 */ 0,/*E9 VK_OEM_RESET */ 0,/*EA VK_OEM_JUMP */ 0,/*EB VK_OEM_PA1 */ 0,/*EC VK_OEM_PA2 */ 0,/*ED VK_OEM_PA3 */ 0,/*EE VK_OEM_WSCTRL */ 0,/*EF VK_OEM_CUSEL */ 0,/*F0 VK_OEM_ATTN */ 0,/*F1 VK_OEM_FINISH */ 0,/*F2 VK_OEM_COPY */ 0,/*F3 VK_OEM_AUTO */ 0,/*F4 VK_OEM_ENLW */ 0,/*F5 VK_OEM_BACKTAB */ 0,/*F6 VK_ATTN */ 0,/*F7 VK_CRSEL */ 0,/*F8 VK_EXSEL */ 0,/*F9 VK_EREOF */ 0,/*FA VK_PLAY */ 0,/*FB VK_ZOOM */ 0,/*FC VK_NONAME */ 0,/*FD VK_PA1 */ 0,/*FE VK_OEM_CLEAR */ 0,/*FF */ 0};const char_t* Tkeyboard::getKeyName(int key){ return keyInfo[key&255].keyname;}//=============================== Tmouse ===============================Tmouse::Tmouse(TintStrColl *Icoll,IffdshowBase *Ideci):TdirectInput(Icoll,_l("mouse"),GUID_SysMouse,c_dfDIMouse,&state,&prevstate,sizeof(state),Ideci){ static const TintOptionT<Tmouse> iopts[]= { IDFF_isMouse ,&Tmouse::is ,0,0,_l(""),0, _l("mouse"),0, IDFF_mouseAlways ,&Tmouse::always ,0,0,_l(""),0, _l("mouseAlways"),0, 0 }; addOptions(iopts); setOnChange(IDFF_isMouse,this,&Tmouse::onChange); load();}Tmouse::~Tmouse(){ unhook();}void Tmouse::processState(void){ if (!state.lX && !state.lY && !state.lZ) return; if (!always && !windowActive()) return; DPRINTF(_l("%i %i %i %i %i %i %i"),state.lX,state.lY,state.lZ,(int)state.rgbButtons[0],(int)state.rgbButtons[1],(int)state.rgbButtons[2],(int)state.rgbButtons[3]);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?