Solved

How to trap the ESCAPE key

Posted on 1998-12-11
3
1,007 Views
Last Modified: 2013-11-20
Hello:

I'm trying to trap the escape key but unsuccessfuly.
This is what I've tried:

CMyView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlag)
{
   if (nChar==VK_ESCAPE)
   {
        //Some code...
   }

}

However, when the escape key is pressed OnKeyDown message
is not called.

Any idea?
0
Comment
Question by:qocarlos
3 Comments
 
LVL 6

Expert Comment

by:thresher_shark
ID: 1326063
I don't know for sure, but is it possible that the OnKeyDown member function is not called in the view class?  Have you tried the same code in the app class (is that the term?)?
0
 
LVL 4

Accepted Solution

by:
pagladasu earned 50 total points
ID: 1326064
You should trap the PreTranslateMessage of your view class. Here is a sample code. It works for CView as well as CFormView derived classes:
BOOL CMyView::PreTranslateMessage(MSG* pMsg)
{
      // TODO: Add your specialized code here and/or call the base class
      if(pMsg->message==WM_KEYUP){
            if(pMsg->wParam==VK_ESCAPE)
                  MessageBox("RUN");
      }
      return CFormView::PreTranslateMessage(pMsg);
}

I hope this will help. Thanks
pagladasu
0
 
LVL 3

Author Comment

by:qocarlos
ID: 1326065
pagladasu,
THANKS, it works great!
What I would like to know is why I don't get the OnKeyDown function when pressing the escape key.
Anyway, thanks again for your help.
0

Featured Post

How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

Join & Write a Comment

In this article, I'll describe -- and show pictures of -- some of the significant additions that have been made available to programmers in the MFC Feature Pack for Visual C++ 2008.  These same feature are in the MFC libraries that come with Visual …
Introduction: Ownerdraw of the grid button.  A singleton class implentation and usage. Continuing from the fifth article about sudoku.   Open the project in visual studio. Go to the class view – CGridButton should be visible as a class.  R…
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
This tutorial demonstrates a quick way of adding group price to multiple Magento products.

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now