📄 myedit.cpp
字号:
// MyEdit.cpp : implementation file
//
#include "stdafx.h"
#include "VideoCapture.h"
#include "MyEdit.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CMyEdit
CMyEdit::CMyEdit()
{
IsCtrl=FALSE;
}
CMyEdit::~CMyEdit()
{
}
BEGIN_MESSAGE_MAP(CMyEdit, CEdit)
//{{AFX_MSG_MAP(CMyEdit)
ON_WM_SYSKEYDOWN()
ON_WM_KEYDOWN()
ON_WM_KEYUP()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CMyEdit message handlers
void CMyEdit::OnSysKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
TRACE("%d--%d\n",nChar,nFlags);
if((nFlags & 0x2000)==0x2000)
{
// CString str;
switch(nChar) {
case '1'://新
SendMessage(WM_CHAR,(LPARAM)((213<<8)+203),0);
break;
case '2'://台
SendMessage(WM_CHAR,(LPARAM)((227<<8)+213),0);
break;
case '3'://渝
SendMessage(WM_CHAR,(LPARAM)((169<<8)+190),0);
break;
case '4'://港
SendMessage(WM_CHAR,(LPARAM)((166<<8)+187),0);
break;
case '5'://澳
SendMessage(WM_CHAR,(LPARAM)((179<<8)+194),0);
break;
case '6'://农
SendMessage(WM_CHAR,(LPARAM)((189<<8)+188),0);
break;
case '7'://境
SendMessage(WM_CHAR,(LPARAM)((168<<8)+180),0);
break;
case '8'://挂
SendMessage(WM_CHAR,(LPARAM)((218<<8)+186),0);
break;
case '9'://临
SendMessage(WM_CHAR,(LPARAM)((238<<8)+205),0);
break;
case 'A'://甲
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'B'://乙
SendMessage(WM_CHAR,(LPARAM)((213<<8)+203),0);
break;
case 'D'://丙
SendMessage(WM_CHAR,(LPARAM)((227<<8)+213),0);
break;
case 'E'://丁
SendMessage(WM_CHAR,(LPARAM)((169<<8)+190),0);
break;
case 'G'://戊
SendMessage(WM_CHAR,(LPARAM)((166<<8)+187),0);
break;
case 'I'://已
SendMessage(WM_CHAR,(LPARAM)((179<<8)+194),0);
break;
case 'J'://庚
SendMessage(WM_CHAR,(LPARAM)((189<<8)+188),0);
break;
case 'K'://辛
SendMessage(WM_CHAR,(LPARAM)((168<<8)+180),0);
break;
case 'M'://壬
SendMessage(WM_CHAR,(LPARAM)((218<<8)+186),0);
break;
case 'N'://
SendMessage(WM_CHAR,(LPARAM)((238<<8)+205),0);
break;
case 'O'://子
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'Q'://丑
SendMessage(WM_CHAR,(LPARAM)((213<<8)+203),0);
break;
case 'R'://
SendMessage(WM_CHAR,(LPARAM)((227<<8)+213),0);
break;
case 'T'://
SendMessage(WM_CHAR,(LPARAM)((169<<8)+190),0);
break;
case 'U'://辰
SendMessage(WM_CHAR,(LPARAM)((166<<8)+187),0);
break;
case 'W'://巳
SendMessage(WM_CHAR,(LPARAM)((179<<8)+194),0);
break;
case 'X'://午
SendMessage(WM_CHAR,(LPARAM)((189<<8)+188),0);
break;
case 'Y'://未
SendMessage(WM_CHAR,(LPARAM)((168<<8)+180),0);
break;
case 'Z'://申
SendMessage(WM_CHAR,(LPARAM)((218<<8)+186),0);
break;
case ','://酉
SendMessage(WM_CHAR,(LPARAM)((238<<8)+205),0);
break;
case '.'://戌
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case ';'://亥
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
default:;
}
}
// if (nChar=='A' && ((nFlags & 0x2000) == 0x2000))
// ShowMessage("a");
CEdit::OnSysKeyDown(nChar, nRepCnt, nFlags);
}
void CMyEdit::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
if((nChar & VK_CONTROL)==VK_CONTROL )
{
IsCtrl=TRUE;
return;
}
if (IsCtrl)
{
CString str;
switch(nChar) {
case 'A'://苏
SendMessage(WM_CHAR,(LPARAM)((227<<8)+213),0);
break;
case 'B'://浙
SendMessage(WM_CHAR,(LPARAM)((227<<8)+213),0);
break;
case 'D'://京
SendMessage(WM_CHAR,(LPARAM)((169<<8)+190),0);
break;
case 'E'://沪
SendMessage(WM_CHAR,(LPARAM)((166<<8)+187),0);
break;
case 'F'://鲁
SendMessage(WM_CHAR,(LPARAM)((179<<8)+194),0);
break;
case 'G'://冀
SendMessage(WM_CHAR,(LPARAM)((189<<8)+188),0);
break;
case 'H'://川
SendMessage(WM_CHAR,(LPARAM)((168<<8)+180),0);
break;
case 'I'://黑
SendMessage(WM_CHAR,(LPARAM)((218<<8)+186),0);
break;
case 'K'://皖
SendMessage(WM_CHAR,(LPARAM)((238<<8)+205),0);
break;
case 'J'://警
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'L'://学
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'M'://特
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'N'://使
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'O'://试
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'P'://津
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'Q'://晋
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'R'://蒙
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'S'://辽
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'T'://吉
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'U'://闽
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'W'://赣
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'X'://豫
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'Y'://鄂
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case 'Z'://湘
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case '0'://粤
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case '1'://桂
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case '2'://琼
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case '3'://贵
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case '4'://云
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case '5'://藏
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case '6'://陕
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case '7'://甘
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case '8'://青
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
case '9'://宁
SendMessage(WM_CHAR,(LPARAM)((175<<8)+190),0);
break;
default:;
}
}
CEdit::OnKeyDown(nChar, nRepCnt, nFlags);
}
void CMyEdit::OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags)
{
if((nChar & VK_CONTROL)==VK_CONTROL )
{
IsCtrl=FALSE;
return;
}
CEdit::OnKeyUp(nChar, nRepCnt, nFlags);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -