您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ CGEventPost函数代码示例

51自学网 2021-06-01 19:59:50
  C++
这篇教程C++ CGEventPost函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中CGEventPost函数的典型用法代码示例。如果您正苦于以下问题:C++ CGEventPost函数的具体用法?C++ CGEventPost怎么用?C++ CGEventPost使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了CGEventPost函数的28个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: sendNativeMouseButtonEvent_Quartz

Qt::Native::Status sendNativeMouseButtonEvent_Quartz(const QNativeMouseButtonEvent &event){    CGPoint pos;    pos.x = event.globalPos.x();    pos.y = event.globalPos.y();    CGEventType type = kCGEventNull;    if (event.button == Qt::LeftButton)        type = (event.clickCount > 0) ? kCGEventLeftMouseDown : kCGEventLeftMouseUp;    else if (event.button == Qt::RightButton)        type = (event.clickCount > 0) ? kCGEventRightMouseDown : kCGEventRightMouseUp;    else        type = (event.clickCount > 0) ? kCGEventOtherMouseDown : kCGEventOtherMouseUp;    // The mouseButton argument to CGEventCreateMouseEvent() is ignored unless the type    // is kCGEventOtherSomething, so defaulting to kCGMouseButtonLeft is fine.    CGMouseButton mouseButton = (type == kCGEventOtherMouseDown || type == kCGEventOtherMouseUp) ?        kCGMouseButtonCenter : kCGMouseButtonLeft;    CGEventRef e = CGEventCreateMouseEvent(0, type, pos, mouseButton);    setModifiersFromQNativeEvent(e, event);    CGEventSetIntegerValueField(e, kCGMouseEventClickState, event.clickCount);    CGEventPost(kCGHIDEventTap, e);    CFRelease(e);    return Qt::Native::Success;}
开发者ID:2gis,项目名称:2gisqt5android,代码行数:26,


示例2: CGEventCreateMouseEvent

bool GTMouseDriver::doubleClick() {    QPoint mousePos = QCursor::pos();    CGEventType eventTypeMouseDown = kCGEventLeftMouseDown ;    CGEventRef eventPress = CGEventCreateMouseEvent(NULL, eventTypeMouseDown, CGPointMake(mousePos.x(), mousePos.y()), 0 /*ignored*/);    DRIVER_CHECK(eventPress != NULL, "Can't create event");    CGEventType eventTypeMouseUp = kCGEventLeftMouseUp ;    CGEventRef eventRelease = CGEventCreateMouseEvent(NULL, eventTypeMouseUp, CGPointMake(mousePos.x(), mousePos.y()), 0 /*ignored*/);    DRIVER_CHECK(eventRelease != NULL, "Can't create event");    CGEventPost(kCGSessionEventTap, eventPress);    GTGlobals::sleep(0); // don't touch, it's Mac's magic    CGEventPost(kCGSessionEventTap, eventRelease);    GTGlobals::sleep(0);    CGEventSetDoubleValueField(eventPress, kCGMouseEventClickState, 2);    CGEventSetDoubleValueField(eventRelease, kCGMouseEventClickState, 2);    CGEventPost(kCGSessionEventTap, eventPress);    GTGlobals::sleep(0); // don't touch, it's Mac's magic    CGEventPost(kCGSessionEventTap, eventRelease);    GTGlobals::sleep(0);    GTGlobals::sleep(100);    CFRelease(eventPress);    CFRelease(eventRelease);    return true;}
开发者ID:ugeneunipro,项目名称:QSpec,代码行数:31,


示例3: doubleClick

/** * Special function for sending double clicks, needed for Mac OS X. * @param button Button to click. */void doubleClick(MMMouseButton button){	#if defined(IS_MACOSX)	/* Double click for Mac. */	const CGPoint currentPos = CGPointFromMMPoint(getMousePos());	const CGEventType mouseTypeDown = MMMouseToCGEventType(true, button);	const CGEventType mouseTypeUP = MMMouseToCGEventType(false, button);	CGEventRef event = CGEventCreateMouseEvent(NULL, mouseTypeDown, currentPos, kCGMouseButtonLeft);  		/* Set event to double click. */							CGEventSetIntegerValueField(event, kCGMouseEventClickState, 2);												CGEventPost(kCGHIDEventTap, event);  																	CGEventSetType(event, mouseTypeUP);  	CGEventPost(kCGHIDEventTap, event);  	CFRelease(event); #else	/* Double click for everything else. */	clickMouse(button);	microsleep(200);	clickMouse(button);	#endif}
开发者ID:bright-spark,项目名称:robotjs,代码行数:35,


示例4: ofGetElapsedTimeMillis

//--------------------------------------------------------------void testApp::update(){    openNIDevice.update();        int holdTime = 300;    currTime = ofGetElapsedTimeMillis();        if((currTime - keyTime) > holdTime && leftKeyFlag){        cout << "RELEASE LEFT KEY" << endl;        CGEventRef b =  CGEventCreateKeyboardEvent(NULL, 123, 0);        CGEventPost(kCGHIDEventTap, b);        leftKeyFlag = false;    }        if((currTime - keyTime) > holdTime && rightKeyFlag){        cout << "RELEASE RIGHT KEY" << endl;        CGEventRef f =  CGEventCreateKeyboardEvent(NULL, 124, 0);        CGEventPost(kCGHIDEventTap, f);        rightKeyFlag = false;    }        if((currTime - keyTime) > holdTime && upKeyFlag){        cout << "RELEASE UP KEY" << endl;        CGEventRef d =  CGEventCreateKeyboardEvent(NULL, 126, 0);        CGEventPost(kCGHIDEventTap, d);        upKeyFlag = false;     }        if (upKeyFlag == 1) {        leftByRun = 1;        rightByRun = 1;    } else {        leftByRun = 0;        rightByRun = 0;}}
开发者ID:XinheF,项目名称:googlemap_of,代码行数:36,


示例5: KwmEmitKeystroke

void KwmEmitKeystroke(modifiers Mod, std::string Key){    CGEventFlags Flags = 0;    if(Mod.CmdKey)        Flags |= kCGEventFlagMaskCommand;    if(Mod.CtrlKey)        Flags |= kCGEventFlagMaskControl;    if(Mod.AltKey)        Flags |= kCGEventFlagMaskAlternate;    if(Mod.ShiftKey)        Flags |= kCGEventFlagMaskShift;    CGKeyCode Keycode;    bool Result = GetLayoutIndependentKeycode(Key, &Keycode);    if(!Result)        Result = KeycodeForChar(Key[0], &Keycode);    if(Result)    {        CGEventRef EventKeyDown = CGEventCreateKeyboardEvent(NULL, Keycode, true);        CGEventRef EventKeyUp = CGEventCreateKeyboardEvent(NULL, Keycode, false);        CGEventSetFlags(EventKeyDown, Flags);        CGEventSetFlags(EventKeyUp, Flags);        CGEventPost(kCGHIDEventTap, EventKeyDown);        CGEventPost(kCGHIDEventTap, EventKeyUp);        CFRelease(EventKeyDown);        CFRelease(EventKeyUp);    }}
开发者ID:JakimLi,项目名称:kwm,代码行数:31,


示例6: CGEventTypeForMouseButton

bool wxUIActionSimulator::MouseDblClick(int button){    CGEventType downtype = CGEventTypeForMouseButton(button, true);    CGEventType uptype = CGEventTypeForMouseButton(button, false);    wxCFRef<CGEventRef> event(                              CGEventCreateMouseEvent(NULL, downtype, GetMousePosition(), CGButtonForMouseButton(button)));        if ( !event )        return false;        CGEventSetType(event,downtype);    CGEventPost(tap, event);        CGEventSetType(event, uptype);    CGEventPost(tap, event);        CGEventSetIntegerValueField(event, kCGMouseEventClickState, 2);    CGEventSetType(event, downtype);    CGEventPost(tap, event);        CGEventSetType(event, uptype);    CGEventPost(tap, event);    wxCFEventLoop* loop = dynamic_cast<wxCFEventLoop*>(wxEventLoop::GetActive());    if (loop)        loop->SetShouldWaitForEvent(true);        return true;}
开发者ID:70michal19,项目名称:dolphin,代码行数:28,


示例7: CGEventCreateKeyboardEvent

void UBKeyboardButton::sendControlSymbol(int nSymbol){	CGEventRef event1 = CGEventCreateKeyboardEvent(NULL, nSymbol, true);	CGEventRef event2 = CGEventCreateKeyboardEvent(NULL, nSymbol, false);	CGEventPost(kCGHIDEventTap, event1);	CGEventPost(kCGHIDEventTap, event2);}
开发者ID:199901,项目名称:Sankore-3.1,代码行数:8,


示例8: SendString

void SendString(CFStringRef str, unsigned delayMS){  //virtual keycodes copied from 10.6 SDK.  Could not find them in 10.4 SDK  enum { VK_RETURN = 0x24 /*KVK_Return*/, VK_TAB = 0x30 /*kVK_Tab*/, VK_SPACE = 0x31/*kVK_Space*/};    //A list of chars for which we must specify the virtual keycode  static const CFStringRef specialChars = CFSTR("/n/t ");    static const UniChar verticalTab = CFStringGetCharacterAtIndex(CFSTR("/v"), 0);  //each keycode must correspond to the correct char in 'specialChars'  CGKeyCode specialKeyCodes[] = {VK_RETURN, VK_TAB, VK_SPACE };    assert(CFStringGetLength(specialChars) == NumberOf(specialKeyCodes));  for (unsigned i = 0, len = CFStringGetLength(str); i < len; ++i) {    //The next char to send    UniChar c = CFStringGetCharacterAtIndex(str, i);        //throw away 'vertical tab' chars which are only used on Windows to send a shift+tab    //as a workaround for some issues with IE     if (verticalTab == c)      continue;        //see if we need to specify the virtual keycode for this char    CGKeyCode vKey = 0; //0 = kVK_ANSI_A, but I don't know of a more appropriate default value    for (size_t j = 0; j < NumberOf(specialKeyCodes); ++j) {      if ( CFStringGetCharacterAtIndex(specialChars, j) == c) {        vKey = specialKeyCodes[j];        break;      }    }        CGEventRef keyDown = CGEventCreateKeyboardEvent(NULL, vKey, true);    CGEventRef keyUp   = CGEventCreateKeyboardEvent(NULL, vKey, false);        if (keyDown && keyUp) {      //may be we should not do this if we found the virtual keycode?      CGEventKeyboardSetUnicodeString(keyDown, 1, &c);      CGEventKeyboardSetUnicodeString(keyUp, 1, &c);            CGEventPost(kCGSessionEventTap, keyDown);      CGEventPost(kCGSessionEventTap, keyUp);            pws_os::sleep_ms(delayMS);            CFRelease(keyDown);      CFRelease(keyUp);    }    else {      if (keyDown) CFRelease(keyDown);      if (keyUp) CFRelease(keyUp);      pws_os::IssueError(_T("Out of memory trying to allocate CGEventRef"));      return;    }  }}
开发者ID:Sp1l,项目名称:pwsafe,代码行数:57,


示例9: main

int main() {    CGEventRef mkey = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)7, true);    CGEventPost(kCGSessionEventTap, mkey);    CFRelease(mkey);        CGEventRef fkey = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)7, false);    CGEventPost(kCGSessionEventTap, fkey);    CFRelease(fkey);    return 0;}
开发者ID:ippeb,项目名称:TetrisBattleBot,代码行数:10,


示例10: CGEventPost

void UBKeyboardButton::sendUnicodeSymbol(KEYCODE keycode){    if (keycode.modifier)		CGEventPost(kCGSessionEventTap, CGEventCreateKeyboardEvent(NULL, 56, true));    CGEventPost(kCGSessionEventTap, CGEventCreateKeyboardEvent(NULL, keycode.code, true));    CGEventPost(kCGSessionEventTap, CGEventCreateKeyboardEvent(NULL, keycode.code, false));    if (keycode.modifier)		CGEventPost(kCGSessionEventTap, CGEventCreateKeyboardEvent(NULL, 56, false));	}
开发者ID:199901,项目名称:Sankore-3.1,代码行数:10,


示例11: sendPress

void sendPress(int kc) { CGEventSourceRef src = NULL;//    CGEventSourceCreate(kCGEventSourceStateHIDSystemState);	CGEventRef down, up;	down = CGEventCreateKeyboardEvent(src,(CGKeyCode)kc, true);	up = CGEventCreateKeyboardEvent(src,(CGKeyCode)kc, false);	CGEventPost(kCGSessionEventTap, down);	CGEventPost(kCGSessionEventTap, up);	CFRelease(down);	CFRelease(up);}
开发者ID:naveenarun,项目名称:Practice_Projects,代码行数:13,


示例12: CGEventSourceCreate

void Utilities::PostKey(CGKeyCode key){    CGEventSourceRef source = CGEventSourceCreate(kCGEventSourceStateCombinedSessionState);        CGEventRef keyDown = CGEventCreateKeyboardEvent(source, key, TRUE);    CGEventRef keyUp = CGEventCreateKeyboardEvent(source, key, FALSE);        CGEventPost(kCGAnnotatedSessionEventTap, keyDown);    CGEventPost(kCGAnnotatedSessionEventTap, keyUp);        CFRelease(keyUp);    CFRelease(keyDown);    CFRelease(source);}
开发者ID:ichenjia,项目名称:LeapPoint,代码行数:14,


示例13: CGEventCreateMouseEvent

void XInputSimulatorImplMacOs::mouseMoveRelative(int x, int y){    int newX = this->currentX + x;    int newY = this->currentY + y;    if(newX < 0 || newX > this->displayX || newY < 0 || newY > this->displayY )    {        std::cout << "mouse moved beyound screensize." << std::endl;        return;    }    std::cout << "newx: " << newX << " newy: " << newY << std::endl;    CGEventRef mouseEv = CGEventCreateMouseEvent(                NULL, kCGEventMouseMoved,                CGPointMake(newX, newY),                kCGMouseButtonLeft);    CGEventPost(kCGHIDEventTap, mouseEv);    CFRelease(mouseEv);    this->currentX = newX;    this->currentY = newY;}
开发者ID:thisispoker,项目名称:alphapoker,代码行数:25,


示例14: mouseup

void mouseup(char btn) {    CGEventType eventType;    CGMouseButton button;    switch (btn) {        case 'l':            eventType = kCGEventLeftMouseDown;            button = kCGMouseButtonLeft;            break;        case 'r':            eventType = kCGEventRightMouseDown;            button = kCGMouseButtonRight;            break;        case 'm':            eventType = kCGEventOtherMouseDown;            button = kCGMouseButtonCenter;            break;        default:            eventType = kCGEventNull;            break;    }        if (eventType != kCGEventNull) {        CGEventRef event = CGEventCreateMouseEvent(NULL, eventType, mousePos(), button);        CGEventPost(kCGHIDEventTap, event);        CFRelease(event);    }}
开发者ID:Aiur,项目名称:Airtab,代码行数:27,


示例15: CGEventCreateKeyboardEvent

void XInputSimulatorImplMacOs::keyUp(int key){    CGKeyCode keycode = key;    CGEventRef commandUp = CGEventCreateKeyboardEvent(NULL, keycode, false);    CGEventPost(kCGAnnotatedSessionEventTap, commandUp);    CFRelease(commandUp);}
开发者ID:thisispoker,项目名称:alphapoker,代码行数:7,


示例16: CGEventCreateKeyboardEvent

bool pws_os::MacSimulateApplicationSwitch(unsigned delayMS){  enum { VK_CMD = 55, VK_TAB = 48 };  struct {    CGKeyCode virtualKey;    bool down;    bool mask;  } KeySequence[]={ {VK_CMD, true, true},                    {VK_TAB, true, true},                    {VK_TAB, false, true},                    {VK_CMD, false, false}                  };  for (size_t idx = 0; idx < NumberOf(KeySequence); ++idx) {    CGEventRef keystroke = CGEventCreateKeyboardEvent(NULL, KeySequence[idx].virtualKey, KeySequence[idx].down);    if (keystroke) {      if (KeySequence[idx].mask) {        CGEventSetFlags(keystroke, kCGEventFlagMaskCommand);      }      CGEventPost(kCGSessionEventTap, keystroke);      CFRelease(keystroke);      pws_os::sleep_ms(delayMS);    }    else {      return false;    }  }    return true;}
开发者ID:wcremeika,项目名称:thesis,代码行数:31,


示例17: CGGetDisplaysWithPoint

bool MouseMac::moveMouseTo(int x, int y){    UInt32 maxDisplays = 4;    CGDirectDisplayID displayID[maxDisplays];    CGDisplayCount c = 0;    CGDisplayCount *count = &c;    CGGetDisplaysWithPoint(                CGPointMake(x, y),                maxDisplays,                displayID,                count);    if (*count > 0)    {        CGEventRef mouseEv = CGEventCreateMouseEvent(                        NULL, kCGEventMouseMoved,                        CGPointMake(x, y),                        kCGMouseButtonLeft);        CGEventPost(kCGHIDEventTap, mouseEv);        CFRelease(mouseEv);        return true;    }    else    {        return false;    }}
开发者ID:MichaelChansn,项目名称:RemoteControlServer,代码行数:26,


示例18: toggleKeyCode

void toggleKeyCode(MMKeyCode code, const bool down, MMKeyFlags flags){#if defined(IS_MACOSX)	CGEventRef keyEvent = CGEventCreateKeyboardEvent(NULL,	                                                 (CGKeyCode)code, down);	assert(keyEvent != NULL);	CGEventSetType(keyEvent, down ? kCGEventKeyDown : kCGEventKeyUp);	CGEventSetFlags(keyEvent, flags);	CGEventPost(kCGSessionEventTap, keyEvent);	CFRelease(keyEvent);#elif defined(IS_WINDOWS)	const DWORD dwFlags = down ? 0 : KEYEVENTF_KEYUP;	/* Parse modifier keys. */	if (flags & MOD_META) WIN32_KEY_EVENT_WAIT(K_META, dwFlags);	if (flags & MOD_ALT) WIN32_KEY_EVENT_WAIT(K_ALT, dwFlags);	if (flags & MOD_CONTROL) WIN32_KEY_EVENT_WAIT(K_CONTROL, dwFlags);	if (flags & MOD_SHIFT) WIN32_KEY_EVENT_WAIT(K_SHIFT, dwFlags);	win32KeyEvent(code, dwFlags);#elif defined(USE_X11)	Display *display = XGetMainDisplay();	const Bool is_press = down ? True : False; /* Just to be safe. */	/* Parse modifier keys. */	if (flags & MOD_META) X_KEY_EVENT_WAIT(display, K_META, is_press);	if (flags & MOD_ALT) X_KEY_EVENT_WAIT(display, K_ALT, is_press);	if (flags & MOD_CONTROL) X_KEY_EVENT_WAIT(display, K_CONTROL, is_press);	if (flags & MOD_SHIFT) X_KEY_EVENT_WAIT(display, K_SHIFT, is_press);	X_KEY_EVENT(display, code, is_press);#endif}
开发者ID:Deltatiger,项目名称:robotjs,代码行数:34,


示例19: moveMouse

/** * Move the mouse to a specific point. * @param point The coordinates to move the mouse to (x, y). */void moveMouse(MMPoint point){#if defined(IS_MACOSX)	CGEventRef move = CGEventCreateMouseEvent(NULL, kCGEventMouseMoved,	                                          CGPointFromMMPoint(point),	                                          kCGMouseButtonLeft);	calculateDeltas(&move, point);	CGEventPost(kCGSessionEventTap, move);	CFRelease(move);#elif defined(USE_X11)	Display *display = XGetMainDisplay();	XWarpPointer(display, None, DefaultRootWindow(display),	             0, 0, 0, 0, point.x, point.y);	XSync(display, false);#elif defined(IS_WINDOWS)	//Mouse motion is now done using SendInput with MOUSEINPUT. We use Absolute mouse positioning	#define MOUSE_COORD_TO_ABS(coord, width_or_height) (((65536 * coord) / width_or_height) + (coord < 0 ? -1 : 1))	point.x = MOUSE_COORD_TO_ABS(point.x, GetSystemMetrics(SM_CXSCREEN));	point.y = MOUSE_COORD_TO_ABS(point.y, GetSystemMetrics(SM_CYSCREEN));	INPUT mouseInput;	mouseInput.type = INPUT_MOUSE;	mouseInput.mi.dx = point.x;	mouseInput.mi.dy = point.y;	mouseInput.mi.dwFlags = MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE;	mouseInput.mi.time = 0; //System will provide the timestamp	mouseInput.mi.dwExtraInfo = 0;	mouseInput.mi.mouseData = 0;	SendInput(1, &mouseInput, sizeof(mouseInput));#endif}
开发者ID:aaron21007,项目名称:2016,代码行数:37,


示例20: convertAndSendVK

void convertAndSendVK(PRUint8 vk, bool down) {    CGKeyCode key = 0;    // Hack    usleep(100);    switch (vk) {        case SPACE:            key = kVK_Space;            break;        case BKSP:            key = kVK_Delete;            break;        case TAB:            key = kVK_Tab;            break;        case ENTER:            key = kVK_Return;            break;        case SHIFT:            key = kVK_Shift;            break;        default:            return;    }    CGEventRef event;    CGEventSourceRef eventSource = CGEventSourceCreate(kCGEventSourceStateHIDSystemState);    event = CGEventCreateKeyboardEvent (eventSource, key, down);    CGEventPost(kCGHIDEventTap, event);    CFRelease(eventSource);    CFRelease(event);}
开发者ID:kitwood,项目名称:kylo-browser,代码行数:33,


示例21: CGEventCreateScrollWheelEvent

void XInputSimulatorImplMacOs::mouseScrollY(int length){    int scrollDirection = -1; // 1 down -1 up    if(length < 0){        length *= -1;        scrollDirection *= -1;    }    //length *= 100;    for(int cnt = 0; cnt < length; cnt++){        std::cout << "scroll y mac" << std::endl;        CGEventRef scrollEv = CGEventCreateScrollWheelEvent (                    NULL, kCGScrollEventUnitLine,  // kCGScrollEventUnitLine  //kCGScrollEventUnitPixel                    1, //CGWheelCount 1 = y 2 = xy 3 = xyz                    scrollDirection); // length of scroll from -10 to 10 higher values lead to undef behaviour        CGEventPost(kCGHIDEventTap, scrollEv);        CFRelease(scrollEv);        //sleep(1);    }}
开发者ID:thisispoker,项目名称:alphapoker,代码行数:26,


示例22: keyretrigger

void keyretrigger(usbdevice* kb, int scancode){    CGEventRef kp = CGEventCreateKeyboardEvent(kb->event, scancode, 1);    CGEventSetIntegerValueField(kp, kCGKeyboardEventAutorepeat, 1);    CGEventSetFlags(kp, kb->eflags);    CGEventPost(kCGHIDEventTap, kp);    CFRelease(kp);}
开发者ID:TricksterGuy,项目名称:ckb,代码行数:7,


示例23: main

int main() {	int keyCode = 49; //space bar	srand ( time(NULL) );	printf("User input coming in 30 seconds/n");	sleep(27);	printf("3.../n");	sleep(1);	printf("2.../n");	sleep(1);	printf("1.../n");	sleep(1);	printf("NOW!");	while(1){		CGEventRef ourEvent = CGEventCreate(NULL);		CGPoint point = CGEventGetLocation(ourEvent);			    CGEventRef click1_down = CGEventCreateMouseEvent(	        NULL, kCGEventLeftMouseDown,	        point,	        kCGMouseButtonLeft	    );	    CGEventRef click1_up = CGEventCreateMouseEvent(	        NULL, kCGEventLeftMouseUp,	        point,	        kCGMouseButtonLeft	    );			    CGEventPost(kCGHIDEventTap, click1_down);	    sleep(0.11);				    CGEventPost(kCGHIDEventTap, click1_up);				CFRelease(click1_up);	    CFRelease(click1_down);		CFRelease(ourEvent);				sleep(0.89);		if(rand() % 100 <= 2){	//2% chance			CGEventRef e = CGEventCreateKeyboardEvent (NULL, (CGKeyCode)keyCode, true);			CGEventPost(kCGSessionEventTap, e);			CFRelease(e);			e = CGEventCreateKeyboardEvent (NULL, (CGKeyCode)keyCode, false);			CGEventPost(kCGSessionEventTap, e);					CFRelease(e);		}		sleep(9);	}}
开发者ID:jwhitehorn,项目名称:JWAuc,代码行数:47,


示例24: ScrollUp

static inline void ScrollUp() {    CGEventRef scroll = CGEventCreateScrollWheelEvent(        NULL, kCGScrollEventUnitLine,        1, 4);        CGEventPost(kCGHIDEventTap, scroll);    CFRelease(scroll);}
开发者ID:shengyu7697,项目名称:SimpleComputerRemote,代码行数:8,


示例25: CGEventCreateMouseEvent

void MouseMac::rightMouseUp(){    CGEventRef mouseEv = CGEventCreateMouseEvent(                NULL, kCGEventRightMouseUp,                getCursorPositionCGPoint(),                kCGMouseButtonRight);    CGEventPost(kCGHIDEventTap, mouseEv);    CFRelease(mouseEv);}
开发者ID:MichaelChansn,项目名称:RemoteControlServer,代码行数:9,


示例26: SendString

static inline void SendString(short theCode){	UniChar unicodeString[1];	unicodeString[0] = theCode;	CGEventRef e = CGEventCreateKeyboardEvent(NULL, 0, true);	CGEventKeyboardSetUnicodeString(e, 1, unicodeString);	CGEventPost(kCGHIDEventTap, e);	CFRelease(e);}
开发者ID:shengyu7697,项目名称:SimpleComputerRemote,代码行数:9,


示例27: MouseUpRight

	void MouseUpRight () {		CGEventRef mouse_down = CGEventCreateMouseEvent(	        NULL, kCGEventRightMouseUp,	        MousePos(),	        kCGMouseButtonLeft	    );	    CGEventPost(kCGHIDEventTap, mouse_down);	    CFRelease(mouse_down);	}
开发者ID:arextar,项目名称:ghostjs,代码行数:9,


示例28: MouseMove

	void MouseMove (int x, int y) {		CGEventRef move = CGEventCreateMouseEvent(	        NULL, kCGEventMouseMoved,	        CGPointMake(x, y),	        kCGMouseButtonLeft // ignored	    );	    CGEventPost(kCGHIDEventTap, move);	    CFRelease(move);	}
开发者ID:arextar,项目名称:ghostjs,代码行数:9,



注:本文中的CGEventPost函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ CGImageCreate函数代码示例
C++ CGEventCreateMouseEvent函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。