void CMyEdit::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
if(nChar == 'a' || nChar == 'A')
if(GetKeyState(VK_CONTROL))
AfxMessageBox("ok");
CEdit::OnKeyDown(nChar, nRepCnt, nFlags);
}
{
if(nChar == 'a' || nChar == 'A')
if(GetKeyState(VK_CONTROL))
AfxMessageBox("ok");
CEdit::OnKeyDown(nChar, nRepCnt, nFlags);
}
解决方案 »
- 重绘窗口问题
- 如何实现修改系统时间的文本框的功能 ,解决的话高分送给你
- 哪里有 windows2000 SDK 下载阿?
- 〓StopBulid(强制停止调试)是否会造成内存泄漏?!(高手进)〓
- GIF透明图像的背景擦除问题,UP给分阿
- 100分全给!!!关于Dlg上的Menu
- 如何判断程序是否已经运行?
- lionelyao请来领分
- 使用过VC.NET的高手指点一下,这个怎么对应VC6
- 怎样在一个EXE文件前插入我的代码,让他先执行,然后在执行原程序?
- 谁有 关于 Winamp or 解霸2000 皮肤 的代码 和比较好的文章
- 请问如何在vc6.0的标签控件中改变caption的字体大小,为什么在属性中没有提供设置,难道还要用代码实现吗?
程序中:
if (IsCTRLpressed())
{
switch (nChar)
{
case 'A':
{
...;
}
break;
case 'B':
{
...;
}
break;
}
}
你有没有试过,你的程序可以用吗?
nChar可是UINT的呀,与char的类型就不同,怎么可能相等呢?
即使你对nChar强制类型转换,这样也还是不能区分大小写的,A和a的nChar都是0x41,不信你试试。
WM_KEYDOWN?....
WPARAM?...
GetKeyState(..)
return TRUE
or return CView::PreTranslaleMessage(..)
those above will maybe do