|
<< Click to Display Table of Contents >> Navigation: 3. Script Language > Mouse-Operations > !Direct Engine > Direct Engine Mouse-Operations |
MiniRobotLanguage (MRL)
MEM. Command
Mouse Event Middle Button Click (Direct Engine)

Intention
The MEM. command lets you simulate a middle mouse button click anywhere in an application, even if the window is minimized or tucked away on a hidden desktop. It’s like having a remote control for your middle mouse button—no need to bring the window to the front or move your mouse.
Using the direct engine, MEM. sends the click straight to the target window. This means you can trigger actions—like opening tabs or scrolling—in apps that are out of sight, without interrupting what you’re doing on your main screen.
It’s perfect for automating tasks in background applications or managing multiple desktops. You can click buttons that are disabled, hidden, or off-screen—places your regular mouse can’t touch. And since it doesn’t move your actual mouse pointer, you can keep working as usual while MEM. takes care of the rest.
The click happens at the current "Active Point," typically set by locating a button or control first. Need to adjust it? See MAP - Move Active Point for details.
Hints:
• Works best when the target app supports the direct engine. Some JAVA-based apps might ignore it.
• If MEM. doesn’t trigger the action, try MIM. for a dual-method approach or BSC. for a different tactic.
• Ideal for middle-click actions like scrolling or tab management in minimized windows.
Syntax
MEM.[P1|][P2,P3]
Parameter Explanation
P1 - (optional) prototype coordinates
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: MEM.o|{A2-B4}
- numeric numbers (positive and negative): MEM.o|-20,90
and you can combine this: MEM.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)
GROUP II (based on Point) Prototypes
"m" - actual mouse-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.
"x" - Set Active Point to the Command-position.
P2, P3 - (optional) x,y - coordinates
numeric coordinates, separated by comma. You can use variables and formulas in (..). You can also use a Point-Variable instead of two coordinates.
Example
'***********************************
' MEM.-Demo
'***********************************
STW.ct|PBWindowClass:0|TestApp
SCW.nct|2|Button|Middle Click Zone
MEM.
MEM.r|(10*3),(-10)
ENR.
Remarks
For automating middle-click actions in minimized or hidden windows, MEM. is a top choice due to its direct delivery method.
Limitations:
- Some applications may not process the click if they don’t fully support the direct engine, especially when minimized.
See also:
• 1.C Direct Engine and Compatible Engine
• MLE. - Mouse-Left-Click Event
• MIM. - Mouse Input Middle Button