No BSD License  

Highlights from
mouse simulation

from mouse simulation by morteza ahmadi
mouse controlling

mouse_simulation(n,mouse_button)
function mouse_simulation(n,mouse_button)
% n   -> number of mouse clicking
% n=2 -> double click

% mouse_button ->      'LEFT'    -> left button
%
%                      'RIGHT'   -> right button
%
%                      'MIDDLE'  -> middle button
%

% by : Morteza Ahmadi Najafabadi (matlab7.class@gmail.com)

% I used c code for this function !
% If you already have made desirable 'm_click.mexw32' it is not need to run 'make_m_click'
make_m_click(mouse_button)

for i=1:n
    m_click
    pause(0.1)
end

function make_m_click(mouse_button)
%% #1 create m_click.c

tt=['#include "mex.h" //--This one is required '  char([13 10]) char([13 10]) ,...
    '#include "windows.h"'  char([13 10]) ,...
    '#define MOUSEEVENTF_MOVE        0x0001 /* mouse move */'  char([13 10]) ,...
    '#define MOUSEEVENTF_LEFTDOWN    0x0002 /* left button down */'  char([13 10]) ,...
    '#define MOUSEEVENTF_LEFTUP      0x0004 /* left button up */'  char([13 10]) ,...
    '#define MOUSEEVENTF_RIGHTDOWN   0x0008 /* right button down */'  char([13 10]) ,...
    '#define MOUSEEVENTF_RIGHTUP     0x0010 /* right button up */'  char([13 10]) ,...
    '#define MOUSEEVENTF_MIDDLEDOWN  0x0020 /* middle button down */'  char([13 10]) ,...
    '#define MOUSEEVENTF_MIDDLEUP    0x0040 /* middle button up */'  char([13 10]) ,...
    '#define MOUSEEVENTF_WHEEL       0x0800 /* wheel button rolled */'  char([13 10]) ,...
    '#define MOUSEEVENTF_ABSOLUTE    0x8000 /* absolute move */'  char([13 10]) ,...
    ' '  char([13 10]) ,...
    'WINUSERAPI'  char([13 10]) ,...
    'VOID'  char([13 10]) ,...
    'WINAPI'  char([13 10]) ,...
    'mouse_event('  char([13 10]) ,...
    'DWORD dwFlags,'  char([13 10]) ,...
    'DWORD dx,'  char([13 10]) ,...
    'DWORD dy,'  char([13 10]) ,...
    'DWORD dwData,'  char([13 10]) ,...
    'DWORD dwExtraInfo);'  char([13 10]) ,...
    ' '  char([13 10]) ,...
    'void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])'  char([13 10]) ,...
    '{'  char([13 10]) ,...
    '   mouse_event(MOUSEEVENTF_' mouse_button 'DOWN, 0,0, 0, 0);'  char([13 10]) ,...
    '    mouse_event(MOUSEEVENTF_' mouse_button 'UP, 0,0, 0, 0);'  char([13 10]) ,...
    '}'  char([13 10]) ,...
    ' ']+0;

fid=fopen('m_click1.txt','w+');
fprintf(fid,'%s',tt)
fclose(fid);

dos('del m_click.c')
dos('rename m_click1.txt m_click.c')

%% #2 compile 'm_click.c' and make 'm_click.mexw32'
mex m_click.c





















Contact us at files@mathworks.com