【发布时间】:2011-03-11 13:21:42
【问题描述】:
我的代码有问题,我无法弄清楚。
编辑:请更正此代码。谢谢!
int stringLength = [theData length];
for (int i = 1; i <= stringLength; i++) {
unichar currentCharacter = [theData characterAtIndex:i];
int currentCharacterCode = keyCodeForKeyString(currentCharacter);
CGPostKeyboardEvent((CGCharCode)0, (CGKeyCode)currentCharacterCode, true);
CGPostKeyboardEvent((CGCharCode)0, (CGKeyCode)currentCharacterCode, false);
}
- (int)keyCodeForKeyString:(unichar)keyString
{
if (strcmp(keyString, "a") == 0) return 0;
if (strcmp(keyString, "s") == 0) return 1;
if (strcmp(keyString, "d") == 0) return 2;
if (strcmp(keyString, "f") == 0) return 3;
if (strcmp(keyString, "h") == 0) return 4;
}
【问题讨论】:
-
怎么了?有什么错误?它应该做什么?我们不是读心者....
-
它应该从一串字符运行
CGPostKeyboardEvent(模拟可可中的按键)。它应该在for循环中拆分字符串,找到正确的键码,然后将该键码放入CGPostKeyboardEvent。 Xcode 说Initialization makes pointer from integer without a cast,No '-keyCodeForKeyString' method found。 -
它只能在 OSX 上运行,这就是问题所在!
标签: objective-c cocoa