Como: Adicionar marcas inteligentes a documentos do Word
Se aplica a |
---|
As informações contidas neste tópico se aplicam apenas às especificado Ferramentas do Visual Studio para o Office projetos e as versões do Microsoft Office. Projetos de nível de documento
Projetos de nível de aplicativo
For more information, see Recursos disponíveis pelo aplicativo e o tipo de projeto. |
Você pode adicionar marcas inteligentes a documentos do Microsoft Office Word para reconhecer texto e conceder o Acessar do usuário aos ações relacionadas com os termos reconhecido.
Iniciando no Visual Studio 2008 Serviço Pack 1 (SP1), você pode usar suplementos em nível de aplicativo para adicionar marcas inteligentes a qualquer Abrir documento.O código que você Gravar para criar e configurar um inteligente marca é o mesmo para projetos de nível de documento e o nível de aplicativo, mas existem algumas diferenças na forma que você associar uma marca inteligente documentos.As marcas inteligentes também têm escopo diferente em projetos do nível de documento e o nível de aplicativo.
Este tópico descreve as seguintes tarefas:
Adicionar uma marca inteligente usando uma personalização de nível de documento
Adicionando uma marca inteligente usando um suplemento do nível de aplicativo
Para executar uma marca inteligente, os usuários finais devem ter marcas inteligentes Habilitado no Word ou Excel.For more information, see Como: Habilitar marcas inteligentes no Word e Excel.
Adicionar uma marca inteligente usando uma personalização em nível de documento
As marcas inteligentes em personalizações em nível de documento são reconhecidas apenas no documento que está associado com a personalização.
Para adicionar uma marca inteligente usando uma personalização de nível de documento
Criar um objeto de SmartTag e configurar esse objeto para definir o comportamento da marca inteligente:
Para especificar o texto desejado para reconhecer, use as propriedades de Terms ou Expressions.
Para definir as ações que os usuários podem Clique na marca inteligente, adicione um ou mais objetos Action à propriedade Actions.
For more information, see Arquitetura de marcas inteligentes.
Adicionar o SmartTag à propriedade VstoSmartTags de classe ThisDocument.
O exemplo de código a seguir cria uma marca inteligente que reconhece as palavras term e recognize.Quando o usuário clicar na marca inteligente, ele exibe as posições do Iniciar e finalizar os caracteres de palavra reconhecida.Para executar esse código, Adicionar o código para a classe ThisDocument e o método AddSmartTag chamada do ThisDocument_Startup manipulador de eventos.
Private WithEvents displayAddress As Microsoft.Office.Tools.Word.Action
Private Sub AddSmartTag()
Dim smartTagDemo As New _
Microsoft.Office.Tools.Word.SmartTag( _
"www.microsoft.com/Demo#DemoSmartTag", _
"Demonstration Smart Tag")
' Specify the terms to recognize.
smartTagDemo.Terms.Add("term")
smartTagDemo.Terms.Add("recognize")
' Create the action.
displayAddress = New Microsoft.Office.Tools.Word.Action("To be replaced")
' Add the action to the smart tag.
smartTagDemo.Actions = New Microsoft.Office.Tools.Word.Action() { _
displayAddress}
' Add the smart tag.
Me.VstoSmartTags.Add(smartTagDemo)
End Sub
Private Sub OpenMessageBox_BeforeCaptionShow(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ActionEventArgs) _
Handles DisplayAddress.BeforeCaptionShow
Dim clickedAction As Microsoft.Office.Tools.Word.Action = _
TryCast(sender, Microsoft.Office.Tools.Word.Action)
If clickedAction IsNot Nothing Then
clickedAction.Caption = "Display the location of " & e.Text
End If
End Sub
Private Sub DisplayAddress_Click(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ActionEventArgs) _
Handles DisplayAddress.Click
Dim termStart As Integer = e.Range.Start
Dim termEnd As Integer = e.Range.End
MsgBox("The recognized text '" & e.Text & _
"' begins at position " & termStart & _
" and ends at position " & termEnd)
End Sub
private Microsoft.Office.Tools.Word.Action displayAddress;
private void AddSmartTag()
{
Microsoft.Office.Tools.Word.SmartTag smartTagDemo =
new Microsoft.Office.Tools.Word.SmartTag(
"www.microsoft.com/Demo#DemoSmartTag",
"Demonstration Smart Tag");
// Specify the terms to recognize.
smartTagDemo.Terms.Add("term");
smartTagDemo.Terms.Add("recognize");
// Create the action.
displayAddress = new Microsoft.Office.Tools.Word.Action("To be replaced");
// Add the action to the smart tag.
smartTagDemo.Actions = new Microsoft.Office.Tools.Word.Action[] {
displayAddress };
// Add the smart tag.
this.VstoSmartTags.Add(smartTagDemo);
displayAddress.BeforeCaptionShow += new
Microsoft.Office.Tools.Word.BeforeCaptionShowEventHandler(
displayAddress_BeforeCaptionShow);
displayAddress.Click += new
Microsoft.Office.Tools.Word.ActionClickEventHandler(
displayAddress_Click);
}
void displayAddress_BeforeCaptionShow(object sender,
Microsoft.Office.Tools.Word.ActionEventArgs e)
{
Microsoft.Office.Tools.Word.Action clickedAction =
sender as Microsoft.Office.Tools.Word.Action;
if (clickedAction != null)
{
clickedAction.Caption = "Display the location of " +
e.Text;
}
}
void displayAddress_Click(object sender,
Microsoft.Office.Tools.Word.ActionEventArgs e)
{
int termStart = e.Range.Start;
int termEnd = e.Range.End;
System.Windows.Forms.MessageBox.Show("The recognized text '" + e.Text +
"' begins at position " + termStart.ToString() +
" and ends at position " + termEnd.ToString());
}
Adicionar uma marca inteligente usando um aplicativo Nível suplemento
Iniciando no SP1, você pode adicionar uma marca inteligente usando um suplemento do nível de aplicativo.Você pode especificar se deseja fazer a marca inteligente trabalhar apenas em um documento específico, ou em todos os Abrir documentos (também chamados de marca inteligente de nível de aplicativo um ).
Para adicionar uma marca inteligente a um documento específico
Criar um objeto de SmartTag e configurar esse objeto para definir o comportamento da marca inteligente:
Para especificar o texto desejado para reconhecer, use as propriedades de Terms ou Expressions.
Para definir as ações que os usuários podem Clique na marca inteligente, adicione um ou mais objetos Action à propriedade Actions.
For more information, see Arquitetura de marcas inteligentes.
Use o método de GetVstoObject para criar um item de host Document para o documento que hospedará a marca inteligente.Para obter mais informações sobre como criar itens de host, consulte Estendendo os documentos do Word e Excel pastas de trabalho no nível de aplicativo Adicionar-ins em tempo de execução.
Observação:
Se você estiver usando um projeto que você criou antes Você instalar Ed SP1, você deve modificar o projeto antes de poder usar o Método GetVstoObject.For more information, see Estendendo os documentos do Word e Excel pastas de trabalho no nível de aplicativo Adicionar-ins em tempo de execução.
Adicionar o SmartTag à propriedade VstoSmartTags do Document.
O exemplo de código a seguir cria uma marca inteligente no documento ativo que reconhece as palavras term e recognize.Quando o usuário clicar na marca inteligente, ele exibe as posições do Iniciar e finalizar os caracteres de palavra reconhecida.Para executar esse código, Adicionar o código para a classe ThisAddIn e o método AddSmartTagToActiveDocument chamada do ThisAddIn_Startup manipulador de eventos.
Private WithEvents displayAddress As Microsoft.Office.Tools.Word.Action
Private Sub AddSmartTagToActiveDocument()
Dim smartTagDemo As New _
Microsoft.Office.Tools.Word.SmartTag( _
"www.microsoft.com/Demo#DemoSmartTag", _
"Demonstration Smart Tag")
' Specify the terms to recognize.
smartTagDemo.Terms.Add("term")
smartTagDemo.Terms.Add("recognize")
' Create the action.
displayAddress = New Microsoft.Office.Tools.Word.Action("To be replaced")
' Add the action to the smart tag.
smartTagDemo.Actions = New Microsoft.Office.Tools.Word.Action() { _
displayAddress}
' Get a Document host item, and add the smart tag to the document.
Dim vstoDocument As Microsoft.Office.Tools.Word.Document = _
Me.Application.ActiveDocument.GetVstoObject()
vstoDocument.VstoSmartTags.Add(smartTagDemo)
End Sub
Private Sub OpenMessageBox_BeforeCaptionShow(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ActionEventArgs) _
Handles displayAddress.BeforeCaptionShow
Dim clickedAction As Microsoft.Office.Tools.Word.Action = _
TryCast(sender, Microsoft.Office.Tools.Word.Action)
If clickedAction IsNot Nothing Then
clickedAction.Caption = "Display the location of " & e.Text
End If
End Sub
Private Sub DisplayAddress_Click(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ActionEventArgs) _
Handles displayAddress.Click
Dim termStart As Integer = e.Range.Start
Dim termEnd As Integer = e.Range.End
MsgBox("The recognized text '" & e.Text & _
"' begins at position " & termStart & _
" and ends at position " & termEnd)
End Sub
private Microsoft.Office.Tools.Word.Action displayAddress;
private void AddSmartTagToActiveDocument()
{
Microsoft.Office.Tools.Word.SmartTag smartTagDemo =
new Microsoft.Office.Tools.Word.SmartTag(
"www.microsoft.com/Demo#DemoSmartTag",
"Demonstration Smart Tag");
// Specify the terms to recognize.
smartTagDemo.Terms.Add("term");
smartTagDemo.Terms.Add("recognize");
// Create the action.
displayAddress = new Microsoft.Office.Tools.Word.Action("To be replaced");
// Add the action to the smart tag.
smartTagDemo.Actions = new Microsoft.Office.Tools.Word.Action[] {
displayAddress };
// Add the smart tag to the document.
Microsoft.Office.Tools.Word.Document vstoDocument =
this.Application.ActiveDocument.GetVstoObject();
vstoDocument.VstoSmartTags.Add(smartTagDemo);
displayAddress.BeforeCaptionShow += new
Microsoft.Office.Tools.Word.BeforeCaptionShowEventHandler(
displayAddress_BeforeCaptionShow);
displayAddress.Click += new
Microsoft.Office.Tools.Word.ActionClickEventHandler(
displayAddress_Click);
}
void displayAddress_BeforeCaptionShow(object sender,
Microsoft.Office.Tools.Word.ActionEventArgs e)
{
Microsoft.Office.Tools.Word.Action clickedAction =
sender as Microsoft.Office.Tools.Word.Action;
if (clickedAction != null)
{
clickedAction.Caption = "Display the location of " +
e.Text;
}
}
void displayAddress_Click(object sender,
Microsoft.Office.Tools.Word.ActionEventArgs e)
{
int termStart = e.Range.Start;
int termEnd = e.Range.End;
System.Windows.Forms.MessageBox.Show("The recognized text '" + e.Text +
"' begins at position " + termStart.ToString() +
" and ends at position " + termEnd.ToString());
}
Para adicionar uma marca inteligente que funciona em todas as Abrir documentos
Criar um objeto de SmartTag e configurar esse objeto para definir o comportamento da marca inteligente:
Para especificar o texto desejado para reconhecer, use as propriedades de Terms ou Expressions.
Para definir as ações que os usuários podem Clique na marca inteligente, adicione um ou mais objetos Action à propriedade Actions.
For more information, see Arquitetura de marcas inteligentes.
Adicionar o SmartTag à propriedade VstoSmartTags de classe ThisAddIn.
Observação:
Se você são usando um projeto que você criou antes Você instalar Ed SP1, você deve modificar o projeto para gerar o Propriedade VstoSmartTags.For more information, see Como: Adicionar marcas inteligentes do nível de aplicativo a projetos que foram criados antes do SP1.
O exemplo de código a seguir cria uma marca inteligente que reconhece as palavras term e recognize.Quando o usuário clicar na marca inteligente, ele exibe as posições do Iniciar e finalizar os caracteres de palavra reconhecida.Para executar esse código, Adicionar o código para a classe ThisAddIn e o método AddSmartTag chamada do ThisAddIn_Startup manipulador de eventos.
Private WithEvents displayAddress As Microsoft.Office.Tools.Word.Action
Private Sub AddSmartTag()
Dim smartTagDemo As New _
Microsoft.Office.Tools.Word.SmartTag( _
"www.microsoft.com/Demo#DemoSmartTag", _
"Demonstration Smart Tag")
' Specify the terms to recognize.
smartTagDemo.Terms.Add("term")
smartTagDemo.Terms.Add("recognize")
' Create the action.
displayAddress = New Microsoft.Office.Tools.Word.Action("To be replaced")
' Add the action to the smart tag.
smartTagDemo.Actions = New Microsoft.Office.Tools.Word.Action() { _
displayAddress}
' Add the smart tag.
Me.VstoSmartTags.Add(smartTagDemo)
End Sub
Private Sub OpenMessageBox_BeforeCaptionShow(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ActionEventArgs) _
Handles DisplayAddress.BeforeCaptionShow
Dim clickedAction As Microsoft.Office.Tools.Word.Action = _
TryCast(sender, Microsoft.Office.Tools.Word.Action)
If clickedAction IsNot Nothing Then
clickedAction.Caption = "Display the location of " & e.Text
End If
End Sub
Private Sub DisplayAddress_Click(ByVal sender As Object, _
ByVal e As Microsoft.Office.Tools.Word.ActionEventArgs) _
Handles DisplayAddress.Click
Dim termStart As Integer = e.Range.Start
Dim termEnd As Integer = e.Range.End
MsgBox("The recognized text '" & e.Text & _
"' begins at position " & termStart & _
" and ends at position " & termEnd)
End Sub
private Microsoft.Office.Tools.Word.Action displayAddress;
private void AddSmartTag()
{
Microsoft.Office.Tools.Word.SmartTag smartTagDemo =
new Microsoft.Office.Tools.Word.SmartTag(
"www.microsoft.com/Demo#DemoSmartTag",
"Demonstration Smart Tag");
// Specify the terms to recognize.
smartTagDemo.Terms.Add("term");
smartTagDemo.Terms.Add("recognize");
// Create the action.
displayAddress = new Microsoft.Office.Tools.Word.Action("To be replaced");
// Add the action to the smart tag.
smartTagDemo.Actions = new Microsoft.Office.Tools.Word.Action[] {
displayAddress };
// Add the smart tag.
this.VstoSmartTags.Add(smartTagDemo);
displayAddress.BeforeCaptionShow += new
Microsoft.Office.Tools.Word.BeforeCaptionShowEventHandler(
displayAddress_BeforeCaptionShow);
displayAddress.Click += new
Microsoft.Office.Tools.Word.ActionClickEventHandler(
displayAddress_Click);
}
void displayAddress_BeforeCaptionShow(object sender,
Microsoft.Office.Tools.Word.ActionEventArgs e)
{
Microsoft.Office.Tools.Word.Action clickedAction =
sender as Microsoft.Office.Tools.Word.Action;
if (clickedAction != null)
{
clickedAction.Caption = "Display the location of " +
e.Text;
}
}
void displayAddress_Click(object sender,
Microsoft.Office.Tools.Word.ActionEventArgs e)
{
int termStart = e.Range.Start;
int termEnd = e.Range.End;
System.Windows.Forms.MessageBox.Show("The recognized text '" + e.Text +
"' begins at position " + termStart.ToString() +
" and ends at position " + termEnd.ToString());
}
Segurança
Você deve ativar as marcas inteligentes no Word.Por padrão, eles não estão Habilitados.For more information, see Como: Habilitar marcas inteligentes no Word e Excel.
Consulte também
Tarefas
Como: Habilitar marcas inteligentes no Word e Excel
Como: Adicionar marcas inteligentes a pastas de trabalho do Excel
Como: Adicionar marcas inteligentes do nível de aplicativo a projetos que foram criados antes do SP1
Como: Criar marcas inteligentes com identificadores de Personalizar no Word
Como: Criar marcas inteligentes com identificadores Personalizars no Excel
Demonstra Passo a passo: Criando uma marca inteligente com uma personalização em nível de documento
Demonstra Passo a passo: Criando uma marca inteligente com um nível de aplicativo Adicionar - no
Conceitos
Visão geral sobre marcas inteligentes
Arquitetura de marcas inteligentes
Arquitetura de marcas inteligentes
Desenvolvendo soluções do Office
Date |
History |
Motivo |
---|---|---|
De 2008 de julho |
Adicionado novos procedimentos para suplementos de nível de aplicativo. |
Alteração de recurso do SP1. |