due Posted March 23, 2010 Share Posted March 23, 2010 Hi I am trying to send message to window using windows API. I looks like _SendMessage($hWnd, $WM_MOUSEMOVE, $MK_LBUTTON, $lParam) In spy I see that window does receive message with correct parameters but there is no responce. (Like button is not clicked...) Using MouseClick makes it work, but I need to have a number of windows working simultaneously without switching beetwen them. I would appreciate any help on the subject. Evgeny Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted March 23, 2010 Moderators Share Posted March 23, 2010 due,Welcome to the AutoIt forum. I see that on the ControlClick page in the Help file there is this warning:Some controls will resist clicking unless they are the active window. Use the WinActivate() function to force the control's window to the top before using ControlClick().Although not privy to the inner workings of Autoit, it would not surprise me if ControlClick used the same _SendMessage call that you are using. If so then I imagine that you are falling foul of the same restriction. Not a great help in solving your problem, but at least it might explain why it is happening.I will try and be more helpful next time! M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
wraithdu Posted March 23, 2010 Share Posted March 23, 2010 (edited) Without code, we cannot guess. But I would suggest you are not using the correct message. That message simply means the mouse has moved over some window coordinates (specified by lParam) with the left button down. This does not equal a click. Also, this message must be sent to the parent window, not the button. You are far better off sending the button a BM_CLICK message directly. MSDN can show you how to use this message. It sends the button a WM_LBUTTONDOWN and WM_LBUTTONUP message, and sends the parent window the BN_CLICKED notification. /edit: better answer Edited March 23, 2010 by wraithdu Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now