?
Solved

Subclassing -Missing WM Messages

Posted on 2004-09-08
14
Medium Priority
?
284 Views
Last Modified: 2013-12-03
Ok, I've earned my "expert" wings but only have 255 points so far, but I'll happily give them all away to anyone who can drop their inhibitions for long enough to tell me why I'm having this problem - and preferably suggest a work-around within the same context!

I've successfully subclassed an Excel spreadsheet in the project posted in the following link, which facilitates a mouse-tracking tool. Very handy (if you like that sort of thing) - however as explained in the thread, mouse-clicks are subsequently not received by the worksheet window.

http://www.xtremevbtalk.com/showthread.php?t=180433

Why-oh-why?...


ps. Sorry if the points seem stingy, I've been wating for a month and it's all I've got but I'll happily write an IOU for 500! :)
0
Comment
Question by:Colonel32
  • 8
  • 5
14 Comments
 
LVL 16

Expert Comment

by:nonubik
ID: 12024700
Have you ken into account that the mouse clicks may be caught by some spreasheet children window? (like cells or something)
0
 
LVL 4

Author Comment

by:Colonel32
ID: 12034311
Hi nonubik. Your comment prompted me to use GetFocus to see which window actually had the focus when the mouseclicks were sent.

As it turns out, SPY++ showed that it's not the EXCEL7 (spreadsheet) class as I had assumed, it's some other generic class with no description "F3 Server 60000000". Since most Forms.2 control windows aren't created until they are activated, and a Google search revealed that the class appears in most MSO components, I'm guessing that this is what it is. Quite what how that impacts what I'm trying to do is beyond me though. :-\

Any more thoughts?
0
 
LVL 16

Expert Comment

by:nonubik
ID: 12042525
Can you get from the Excel sheet subclassed to the "F3 Server.." hwnd? In order to subclass it, too
0
Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 4

Author Comment

by:Colonel32
ID: 12042726
I'd imagine so, but the mousemove messages are already being processed correctly by the callback function for the EXCEL7 window, I just can't select any cells once the hook is in place :-*
I might try it anyway when I get home to see if it throws up any new ideas, but it doesn't seem likely. Have you run the project yourself?
0
 
LVL 16

Expert Comment

by:nonubik
ID: 12042742
>Have you run the project yourself?

I'm afraid not, since I have *lots* of work to do .. :(
0
 
LVL 4

Author Comment

by:Colonel32
ID: 12043303
No worries, I know the feeling :)
0
 
LVL 4

Author Comment

by:Colonel32
ID: 12062251
Well I tried that, but the classname was nowhere to be found and SPY++ showed that the EXCEL7 window really was the client. Since Google suggests that noone else has achieved this either,  I'm prepared to accept that subclassing the EXCEL7 window interferes with the mouse messages. But I'd love to know why, especially since Excel must use the mousehover message itself to show the cell Comment window.
0
 
LVL 4

Author Comment

by:Colonel32
ID: 12076000
Is it at all possible that this MS article is in any way related?

http://support.microsoft.com/default.aspx?scid=kb;EN-US;238672

Please close this question moderator! :)
0
 
LVL 16

Expert Comment

by:nonubik
ID: 12076048
hmm... do you use VB? :)
0
 
LVL 4

Author Comment

by:Colonel32
ID: 12077879
I do, but not in this case - why?
0
 
LVL 16

Expert Comment

by:nonubik
ID: 12082224
because the link you posted refers to VB 6.0
0
 
LVL 4

Author Comment

by:Colonel32
ID: 12082523
It also refers to a documented glitch with usercontrols, which since Excel in an ActiveX server, I thought might be relevant.
My project demonstrates loss of mouse input after hooking - the article discusses the topic. Is that entirely circumstantial?
0
 
LVL 4

Accepted Solution

by:
Prestaul earned 2000 total points
ID: 12124917
I appreciated the KB article.  It is part of what led to the solution in your next discussion:
http://www.experts-exchange.com/Programming/Programming_Languages/Visual_Basic/Q_21133291.html
0
 
LVL 4

Author Comment

by:Colonel32
ID: 12125025
Worth every point, Cheers! :)
0

Featured Post

[Webinar] Improve your customer journey

A positive customer journey is important in attracting and retaining business. To improve this experience, you can use Google Maps APIs to increase checkout conversions, boost user engagement, and optimize order fulfillment. Learn how in this webinar presented by Dito.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes how to add a user-defined command button to the Windows 7 Explorer toolbar.  In the previous article (http://www.experts-exchange.com/A_2172.html), we saw how to put the Delete button back there where it belongs.  "Delete" is …
For most people, the WrapPanel seems like a magic when they switch from WinForms to WPF. Most of us will think that the code that is used to write a control like that would be difficult. However, most of the work is done by the WPF engine, and the W…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
How to fix display issue, screen flickering issue when I plug in power cord to the machine. Before I start explaining the solution lets check out once the issue how it looks like after I connect the power cord. most of you also have faced this…

601 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