Compartilhar via


Office.Actions interface

Gere ações e atalhos de teclado.

Métodos

areShortcutsInUse(shortcuts)

Verifica se um conjunto de combinações de atalhos está atualmente a ser utilizado para o utilizador, conforme definido por outro suplemento ou pela aplicação do Office. Para obter mais informações, consulte Adicionar atalhos de teclado personalizados aos seus Suplementos do Office.

associate(actionId, actionFunction)

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

getShortcuts()

Obtém os atalhos existentes para o suplemento. O conjunto inclui sempre (1) os atalhos definidos no manifesto do suplemento para atalhos de teclado e (2) os atalhos personalizados do utilizador atual, se existirem. O atalho pode ser null se entrar em conflito com o atalho de outro suplemento ou com a aplicação do Office. Especificamente, seria null se, quando lhe for pedido para escolher o atalho a utilizar, o utilizador não escolhesse a ação do suplemento atual. Para obter mais informações sobre conflitos com atalhos, veja Evitar combinações de teclas em utilização por outros suplementos.

replaceShortcuts(shortcuts)

Substitui os atalhos de suplemento existentes por atalhos personalizados para o utilizador.

Detalhes do método

areShortcutsInUse(shortcuts)

Verifica se um conjunto de combinações de atalhos está atualmente a ser utilizado para o utilizador, conforme definido por outro suplemento ou pela aplicação 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 para uma matriz de objetos. Cada objeto consiste numa combinação de atalho e valor booleano. O valor é true se a combinação de atalhos entrar em conflito com um atalho de outro suplemento ou com um atalho da aplicação 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 o ID ou nome de uma ação a uma função.

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

Parâmetros

actionId

string

O 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 inclui sempre (1) os atalhos definidos no manifesto do suplemento para atalhos de teclado e (2) os atalhos personalizados do utilizador atual, se existirem. O atalho pode ser null se entrar em conflito com o atalho de outro suplemento ou com a aplicação do Office. Especificamente, seria null se, quando lhe for pedido para escolher o atalho a utilizar, o utilizador não escolhesse a ação do suplemento atual. Para obter mais informações sobre conflitos com atalhos, veja Evitar combinações de teclas em utilização por outros suplementos.

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

Retornos

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

Uma promessa que é resolvida para um objeto de atalhos, sendo as teclas os IDs das ações e valores as combinações de atalhos. 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 utilizador.

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

Parâmetros

shortcuts

{[actionId: string]: string}

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

Retornos

Promise<void>

Uma promessa que é resolvida quando todas as atribuições de atalho personalizadas no shortcuts foram registadas. Mesmo que exista um conflito com os atalhos existentes, o atalho personalizado será registado. Caso contrário, a promessa será rejeitada com o código de erro e a mensagem de erro. É devolvido um código de erro "InvalidOperation" se não existir um ID de ação ou shortcuts 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.");
        }
});