<< Click to Display Table of Contents >> Navigation: 3. Script Language > Mouse-Operations > Compatible Engine > Compatible Engine Mouse-Operations |
MiniRobotLanguage (MRL)
MLU Command
Mouse Left Up (compatible engine with move)
Intention
For Drag'n Drop operations, you may need to just press a mouse-button down.
Then move the mouse and release later it.
There are two commands for this purpose:
• MLD. - Compatible Engine
• MLU.- Compatible Engine
These command should only be used paired, as otherwise you may end up with a "pressed left mouse-button". Using MLD. the left Mouse-Button will be pressed until you physical press and release it again, or until you make another left mouse-click.
You can use MLD. and MLU. for Drag'n Drop operations in programs or on your desktop.
Using MLU., Then the mouse pointer will move to the current "Active Point" and do the release the left mouse-button.
In most cases the "Active Point" is been set, by localizing a button or control or object. In that case, the "Active Point" is in the center of the rectangular object. For Drag'n Drop operations, you may want to move the "Active Point", which is easy using the provided prototypes. You can find some more details on the "Active Point" and how to move it, here:
Syntax
MLU.
Parameter Explanation
Prototype can be omitted or any of:
GROUP I (based on rectangular Area) Prototypes
"w" - choose RECT from last located Window (Child-/ or Top-Window)
"t" - choose RECT from last located Top-Window
"k" - choose RECT from last located Child-Window
"a" - choose RECT from last located Accessible Object (E8) (using SAO.,AGR.,NAV. etc.)
"g" - choose RECT from last located graphical Object (E9) (using QFR,, ANA., UNI. etc.)
"o" - choose RECT from last located Object/Window (any sort of)
"s" - use Screen-Coordinates, these will go over the whole Screen, including Dual- or Multi-Monitors
for these "Base-Prototypes" you can specify additionally fine-tuning using:
- Quadrant coordinates like:
MMV.o|{A2-B4}
- numeric numbers (positive and negative)
MMV.o|-20,90
and you can combine this:
MMV.o|-20,90 {A2-B4}
also there are three Prototypes that will do sort of "left-right" or "Mid" Positioning. These 3 can not be combined with each other.
"d" - Sort of LBO. - Positioning on the Left side of the current Rectangle.
"e" - Sort of RBO. - Positioning on the Right side of the current Rectangle.
"r" - Midpoint of the last RECT (default)
"u" - Move down by the size of the Windows-Titlebar
"v" - Move up by the size of the Windows-Titlebar
' Example (Combination):
MMV.oe|-20,90 {A2-B4}
GROUP II (based on Point) Prototypes
"m" - actual mouse-position. Usefull if the user moves the mouse somewhere and you want to act on that position.
"b" - last mouse-position, before last Move.
"p" - current "Active Point". (Default)
"l" - Last "Active Point".
If prototype is omitted, Screen-Coordinates are taken.
P2, P3 - (optional) x,y - coordinates
numeric coordinates, separated by comma. You can use
variable and Formula in (..). You can also use a
Point-Variable instead of two coordinates.
Example
'*****************************
' Drag'n Drop Sample
'*****************************
' This script will drag an desktop-
' Icon named "Furmark" to the right
' and drop it then
STW.ct|Progman|Program Manager
SCW.nct|1|SHELLDLL_DefView|{&NOTEXT:}
SCW.nct|1|SysListView32|FolderView
SAO.rn|34|FurMark
MLD.
MMV.p|300,100
MLU.
ENR.
Remarks
The alternative to this command is MUM. which uses the Direct Engine. It can not be used for Drag'n Drop operations.
Limitations:
-
See also:
• 1.C Direct Engine and Compatible Engine
• MLE. - Mouse-Left-Click Event
• MLM - Mouse Left click Move (Invinsible)
• MLI - Mouse Left Click quIckly (Invinsible)
• MRC. / MRI. - Mouse-Right-Click