loosing my backspace messages???
-
I put a CEdit control into a simple frame OLE Active X MFC project, and created it on the OnCreate function, and it works fine, except that when I embed the active x control into a webpage, it will not receive the backspace messages. Where did they go?, what took them? Is it internet explorer's client window that's filtering the keypress message? Here is my project example, which is simply a standard MFC Active X control VC++6 project wizard output with a public CEdit member m_edit, that is initialized on the component's OnCreate function. Please take a look and let me know what's going on http://www.employsoft.com/test.zip[^]
-
I put a CEdit control into a simple frame OLE Active X MFC project, and created it on the OnCreate function, and it works fine, except that when I embed the active x control into a webpage, it will not receive the backspace messages. Where did they go?, what took them? Is it internet explorer's client window that's filtering the keypress message? Here is my project example, which is simply a standard MFC Active X control VC++6 project wizard output with a public CEdit member m_edit, that is initialized on the component's OnCreate function. Please take a look and let me know what's going on http://www.employsoft.com/test.zip[^]
Most likely they are going to the IE main window. The backspace causes IE to navigate back one page.
**"What lies behind us and what lies before us are small matters compared to what lies within us." -- Ralph Waldo Emerson
-
Most likely they are going to the IE main window. The backspace causes IE to navigate back one page.
**"What lies behind us and what lies before us are small matters compared to what lies within us." -- Ralph Waldo Emerson
-
ok, now what? can I pretranslate the IE client WND's messages from inside an embedded component? What can I do?
This might help: PRB: Backspace in ATL Subclassed CTL Causes Internet Explorer to Navigate Back[^]
**"Have a heart that never hardens, a temper that never tires, a touch that never hurts." -- Charles Dickens
-
I put a CEdit control into a simple frame OLE Active X MFC project, and created it on the OnCreate function, and it works fine, except that when I embed the active x control into a webpage, it will not receive the backspace messages. Where did they go?, what took them? Is it internet explorer's client window that's filtering the keypress message? Here is my project example, which is simply a standard MFC Active X control VC++6 project wizard output with a public CEdit member m_edit, that is initialized on the component's OnCreate function. Please take a look and let me know what's going on http://www.employsoft.com/test.zip[^]
Also check out this MIND article: WebBrowser Keystroke Problems[^] --Mike-- Ericahist | CP SearchBar v2.0.2 | Homepage | RightClick-Encrypt | 1ClickPicGrabber #include "witty-sig.h"
-
Also check out this MIND article: WebBrowser Keystroke Problems[^] --Mike-- Ericahist | CP SearchBar v2.0.2 | Homepage | RightClick-Encrypt | 1ClickPicGrabber #include "witty-sig.h"
from MSDN
Some objects might want to support the inside-out activation model by marking themselves with the OLEMISC_INSIDEOUT flag. In this model, a single click on the object causes it to be activated in place.
mk:@MSITStore:C:\Program%20Files\Microsoft%20Visual%20Studio\MSDN98\98VS\1033\inole.chm::/D1/S12f9.htmTherefore, to select the object as a whole, the user selects the border, or some other handle, provided by the object or its container. For example, the container
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwue/html/ch12f.asp I found out that If i click the top level window(the one with the elipse drawn from my example), the backspace will work. Now I know why it wouldn't work in the first place, the ocx has the OLEMISC_ACTIVATEWHENVISIBLE flag, but it WON'T activate when visible, as the quote above from suggests, unless the user clicks the control border. Now, who in their right mind is going to click the border instead of the CEdit in the control? jdunlap's link doesn't work, because my example is an active X control and not a ATL Com control, so the activateinplace method is not exposed. Also, MDunn's suggestion won't work either because it's not a keystroke problem :(