Как можно вызвать сочетание клавиш из AppleScript?

это функция, которая проверяет, содержит ли строка только числовое значение.

+(BOOL) checkforNumeric:(NSString*) str
{
    NSString *strMatchstring=@"\\b([0-9%_.+\\-]+)\\b"; 
    NSPredicate *textpredicate=[NSPredicate predicateWithFormat:@"SELF MATCHES %@", strMatchstring];

    if(![textpredicate evaluateWithObject:str])
    {
        //////NSLog(@"Invalid email address found");
        UIAlertView *objAlert = [[UIAlertView alloc] initWithTitle:APP_NAME message:@"please enter valid text." delegate:nil cancelButtonTitle:nil otherButtonTitles:@"Close",nil];
        [objAlert show];
        [objAlert release];
        return FALSE;
    }
    return TRUE;
}

проверяет ее при нажатии кнопки отправки.

27
задан Barton 11 September 2010 в 07:21
поделиться

2 ответа

Конечно, это работает. Системные события могут выполнять нажатия клавиш. Однако нажатия клавиш всегда отправляются в самое переднее приложение, поэтому для выполнения ярлыка для приложения вы должны указать этому приложению сначала активировать его, а затем выполнить его. Например, я могу открыть новую вкладку в Safari с помощью команды -t. Этот яблочный скрипт выглядел бы так ...

tell application "Safari" to activate
tell application "System Events"
    keystroke "t" using command down
end tell

Теперь предположим, что у вас есть глобальное сочетание клавиш. Глобальный смысл это работает из любого приложения. Тогда вам даже не нужно сначала активировать приложение, просто нажмите клавишу. Чтобы нажать запрошенные вами клавиши, сделайте это ...

tell application "System Events"
    keystroke "e" using {command down, option down, control down}
end tell
52
ответ дан 28 November 2019 в 05:01
поделиться

В зависимости от того, какой комбинацией клавиш вы хотите пользоваться, вы можете использовать события нажатия клавиш, например,

сообщать приложению «Системные события» нажатие клавиши «e» с помощью {команда вниз, опция вниз, управление вниз} и конец сказать

замените «е» после нажатия клавиши на то, какое слово или слова вы хотите ввести, а затем измените {команду вниз, опция вниз, управление вниз}, на какие клавиши вы хотите активировать одновременно .

спасибо

0
ответ дан 28 November 2019 в 05:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: