2011-04-28 172 views
0

我需要在我的Qt应用程序上模拟keyPress(我在Mac OS X 10.6上)。在Mac OS X上使用CGEvent Qt

我写了这个代码:

#include <ApplicationServices/ApplicationServices.h> 
... 
CGEventRef mkey = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)46, true); 
CGEventPost(kCGAnnotatedSessionEventTap, mkey); 
CFRelease(mkey); 
... 

但有一个错误:

Undefined symbols: 
    "_CGEventCreateKeyboardEvent", referenced from: 
     SimuleEvent::PressControl(QString)  in simuleevent.o 
    "_CGEventPost", referenced from: 
     SimuleEvent::PressControl(QString)  in simuleevent.o 
    "_CFRelease", referenced from: 
     SimuleEvent::PressControl(QString)  in simuleevent.o 

我想我有链接库,但我不知道是哪个?

谢谢

尼科

回答

2

此行添加到您的.pro文件:

LIBS += -framework ApplicationServices 
0

您需要关联的应用服务框架。例如,

clang -framework ApplicationServices yoursourcefile.c 

-framework是一个连接标志)