Office.Actions interface

Gerencia ações e atalhos de teclado.

Métodos

areShortcutsInUse(shortcuts)

Verifica se um conjunto de combinações de atalho está em uso no momento para o usuário, conforme definido por outro suplemento ou pelo aplicativo do Office. Para obter mais informações, consulte Adicionar atalhos de teclado personalizados aos seus Suplementos do Office.

associate(actionId, actionFunction)

Associa a ID ou o nome de uma ação a uma função.

getShortcuts()

Obtém os atalhos existentes para o suplemento. O conjunto sempre inclui (1) os atalhos definidos no manifesto do suplemento para atalhos de teclado e (2) os atalhos personalizados do usuário atual, se houver. O atalho pode existir null se estiver em conflito com o atalho de outro suplemento ou com o aplicativo do Office. Especificamente, seria null se, quando solicitado a escolher qual atalho usar, o usuário não escolhesse a ação do suplemento atual. Para obter mais informações sobre conflitos com atalhos, consulte Evitar combinações de teclas em uso por outros suplementos.

replaceShortcuts(shortcuts)

Substitui os atalhos de suplemento existentes por atalhos personalizados para o usuário.

Detalhes do método

areShortcutsInUse(shortcuts)

Verifica se um conjunto de combinações de atalho está em uso no momento para o usuário, conforme definido por outro suplemento ou pelo aplicativo do Office. Para obter mais informações, consulte Adicionar atalhos de teclado personalizados aos seus Suplementos do Office.

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

Parâmetros

shortcuts

string[]

Uma matriz de combinações de atalhos. Por exemplo, ["Ctrl+1", "Ctrl+2"].

Retornos

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

Uma promessa que é resolvida como uma matriz de objetos. Cada objeto consiste em uma combinação de atalho e um valor booleano. O valor é true se a combinação de atalho entrar em conflito com um atalho de outro suplemento ou com um atalho do aplicativo do Office; caso contrário, false. Por exemplo, [{shortcut:"Ctrl+1", inUse:true},{shortcut:"Ctrl+2", inUse:false}].

Comentários

Conjuntos de requisitos:

Exemplos

// 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)

Associa a ID ou o nome de uma ação a uma função.

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

Parâmetros

actionId

string

A ID de uma ação definida no manifesto.

actionFunction

(arg?: any) => void

A função que é executada quando a ação é invocada.

Retornos

void

Exemplos

// 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()

Obtém os atalhos existentes para o suplemento. O conjunto sempre inclui (1) os atalhos definidos no manifesto do suplemento para atalhos de teclado e (2) os atalhos personalizados do usuário atual, se houver. O atalho pode existir null se estiver em conflito com o atalho de outro suplemento ou com o aplicativo do Office. Especificamente, seria null se, quando solicitado a escolher qual atalho usar, o usuário não escolhesse a ação do suplemento atual. Para obter mais informações sobre conflitos com atalhos, consulte Evitar combinações de teclas em uso por outros suplementos.

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

Retornos

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

Uma promessa que resolve como um objeto de atalhos, com as chaves sendo as IDs das ações (conforme definido em um manifesto) e os valores sendo as combinações de atalho. Por exemplo, {"SetItalic": "Ctrl+1", "SetBold": "Ctrl+2", "SetUnderline": null}.

Comentários

Conjuntos de requisitos:

Exemplos

// 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)

Substitui os atalhos de suplemento existentes por atalhos personalizados para o usuário.

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

Parâmetros

shortcuts

{[actionId: string]: string}

Um objeto de atalhos personalizados com teclas sendo as IDs das ações e valores sendo as combinações de atalho. Por exemplo, {"SetItalic": "Ctrl+1", "SetBold": "Ctrl+2"}. Para saber como especificar uma ID de ação válida e uma combinação de teclas, confira Adicionar atalhos de teclado personalizados aos seus Suplementos do Office. (Observe que uma combinação de teclas pode ser null, nesse caso, a ação mantém a combinação de teclas especificada no arquivo JSON.)

Retornos

Promise<void>

Uma promessa que resolve quando todas as atribuições shortcuts de atalho personalizado foram registradas. Mesmo que haja um conflito com os atalhos existentes, o atalho personalizado será registrado. Caso contrário, a promessa será rejeitada com um código de erro e uma mensagem de erro. Um OfficeExtension.ErrorCodes.invalidArgument código de erro será retornado se alguma ID shortcuts de ação não existir ou se a combinação de atalho for inválida.

Comentários

Conjuntos de requisitos:

Exemplos

// 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.");
        }
});