Поделиться через


Office.Actions interface

Управляет действиями и сочетаниями клавиш.

Методы

areShortcutsInUse(shortcuts)

Проверяет, используется ли в настоящее время для пользователя набор сочетаний сочетаний, как определено другой надстройкой или приложением Office. Дополнительные сведения см. в статье Добавление настраиваемых сочетаний клавиш в надстройки Office.

associate(actionId, actionFunction)

Связывает идентификатор или имя действия с функцией.

getShortcuts()

Возвращает существующие сочетания клавиш для надстройки. Набор всегда включает (1) сочетания клавиш, определенные в манифесте надстройки для сочетаний клавиш, и (2) пользовательские сочетания клавиш текущего пользователя, если они существуют. Ярлык может быть null , если он конфликтует с ярлыком другой надстройки или с приложением Office. В частности, при null появлении запроса на выбор ярлыка для использования пользователь не выбрал действие текущей надстройки. Дополнительные сведения о конфликтах с ярлыками см. в разделе Предотвращение сочетаний клавиш, используемых другими надстройками.

replaceShortcuts(shortcuts)

Заменяет существующие ярлыки надстроек пользовательскими ярлыками для пользователя.

Сведения о методе

areShortcutsInUse(shortcuts)

Проверяет, используется ли в настоящее время для пользователя набор сочетаний сочетаний, как определено другой надстройкой или приложением Office. Дополнительные сведения см. в статье Добавление настраиваемых сочетаний клавиш в надстройки Office.

areShortcutsInUse(shortcuts: string[]): Promise<Array<{shortcut: string, inUse: boolean}>>;

Параметры

shortcuts

string[]

Массив сочетаний сочетаний клавиш. Например, ["Ctrl+1", "Ctrl+2"].

Возвращаемое значение

Promise<Array<{shortcut: string, inUse: boolean}>>

Обещание, которое разрешается в массив объектов. Каждый объект состоит из сочетания сочетаний клавиш и логического значения. Значение равно , true если сочетание сочетаний клавиш конфликтует с ярлыком другой надстройки или ярлыком приложения Office; в противном случае — falseзначение . Например, [{shortcut:"Ctrl+1", inUse:true},{shortcut:"Ctrl+2", inUse:false}].

Комментарии

Наборы обязательных элементов:

Примеры

// Checks if a specific keyboard shortcut is in use.
const shortcuts = ["Ctrl+Shift+1", "Ctrl+Shift+2"];
Office.actions.areShortcutsInUse(shortcuts)
    .then((shortcutsInUse) => {
        const availableShortcuts = shortcutsInUse.filter((shortcut) => { return !shortcut.inUse; });
        console.log(`Available keyboard shortcuts: ${availableShortcuts}`);
        const usedShortcuts = shortcutsInUse.filter((shortcut) => { return shortcut.inUse; });
        console.log(`Shortcuts in use: ${usedShortcuts}`);
});

associate(actionId, actionFunction)

Связывает идентификатор или имя действия с функцией.

associate(actionId: string, actionFunction: (arg?: any) => void): void;

Параметры

actionId

string

Идентификатор действия, определенного в манифесте.

actionFunction

(arg?: any) => void

Функция, выполняемая при вызове действия.

Возвращаемое значение

void

Примеры

// Maps the action ID to the showTaskPane function.
Office.actions.associate("ShowTaskpane", showTaskPane);

// Displays the add-in's task pane.
function showTaskPane() {
    return Office.addin.showAsTaskpane()
        .then(() => { console.log("Task pane is visible."); })
        .catch((error) => {
            console.log(error.code);
        });
}

getShortcuts()

Возвращает существующие сочетания клавиш для надстройки. Набор всегда включает (1) сочетания клавиш, определенные в манифесте надстройки для сочетаний клавиш, и (2) пользовательские сочетания клавиш текущего пользователя, если они существуют. Ярлык может быть null , если он конфликтует с ярлыком другой надстройки или с приложением Office. В частности, при null появлении запроса на выбор ярлыка для использования пользователь не выбрал действие текущей надстройки. Дополнительные сведения о конфликтах с ярлыками см. в разделе Предотвращение сочетаний клавиш, используемых другими надстройками.

getShortcuts(): Promise<{[actionId: string]: string|null}>;

Возвращаемое значение

Promise<{[actionId: string]: string|null}>

Обещание, которое разрешается в объект сочетаний клавиш, при этом ключи — идентификаторы действий, а значения — сочетания сочетаний сочетаний. Например, {"SetItalic": "Ctrl+1", "SetBold": "Ctrl+2", "SetUnderline": null}.

Комментарии

Наборы обязательных элементов:

Примеры

// Gets the list of keyboard shortcuts for an add-in.
Office.actions.getShortcuts()
    .then((shortcuts) => {
        for (const action in shortcuts) {
            let shortcut = shortcuts[action];
            console.log(`${action}: ${shortcut}`);
        }
});

replaceShortcuts(shortcuts)

Заменяет существующие ярлыки надстроек пользовательскими ярлыками для пользователя.

replaceShortcuts(shortcuts: {[actionId: string]: string}): Promise<void>;

Параметры

shortcuts

{[actionId: string]: string}

Объект настраиваемых сочетаний клавиш с ключами, которые — идентификаторы действий, а значения — сочетания сочетаний сочетаний. Например, {"SetItalic": "Ctrl+1", "SetBold": "Ctrl+2"}. Сведения о том, как указать допустимый идентификатор действия и сочетание клавиш, см. в статье Добавление настраиваемых сочетаний клавиш в надстройки Office. (Обратите внимание, что сочетание клавиш может иметь nullзначение , в этом случае действие сохраняет сочетание ключей, указанное в JSON-файле.)

Возвращаемое значение

Promise<void>

Обещание, которое разрешается при регистрации каждого настраиваемого назначения ярлыка в shortcuts . Даже если существует конфликт с существующими сочетаниями клавиш, настраиваемое сочетание клавиш будет зарегистрировано. В противном случае обещание будет отклонено с кодом ошибки и сообщением об ошибке. Если идентификатор действия в shortcuts не существует, возвращается код ошибки InvalidOperation или если сочетание клавиш недопустимо.

Комментарии

Наборы обязательных элементов:

Примеры

// Replaces the keyboard shortcuts of an add-in.
const customShortcuts = {
    ShowTaskpane:"Ctrl+Shift+1",
    HideTaskpane:"Ctrl+Shift+2"
};
Office.actions.replaceShortcuts(customShortcuts)
    .then(() => { console.log("Keyboard shortcuts successfully registered."); })
    .catch((error) => {
        if (error.code == "InvalidOperation") {
            console.log("ActionId does not exist or shortcut combination is invalid.");
        }
});