Inserir um controle ActiveX

Aplica-se a
InfoPath 2010 InfoPath 2013

Criar e distribuir seu próprio controle ActiveX personalizado pode economizar tempo e esforço para outros designers de modelo de formulário, além de fornecer funcionalidades que não estão disponíveis no Microsoft Office InfoPath. Você pode disponibilizar controles do Microsoft ActiveX no modo de design e usar esses controles nos modelos de formulário que você cria.

Neste artigo

Quando usar um controle ActiveX

Normalmente, você usa um controle ActiveX quando deseja incluir um elemento de interface do usuário no modelo de formulário que não está disponível no InfoPath, como um controle deslizante que vem com o Microsoft Windows.

Sua organização também pode criar seus próprios controles ActiveX personalizados para um uso comercial específico. Por exemplo, um hospital pode desenvolver um controle ActiveX que permite que imagens médicas sejam exibidas em um formulário. Ou suponha que seus representantes de vendas tenham que acompanhar o número de itens vendidos em um determinado mês. Atualizar uma caixa de texto digitando pode ser complicado e pode resultar em erros, considerando que os representantes de vendas precisam incrementar uma vez por vez. Um controle ActiveX personalizado que se auto-incrementa com um clique em mouse reduz o tempo gasto acompanhando essas informações e pode ajudar a reduzir erros.

Início da Página

A experiência do usuário

O que o usuário vê no formulário depende inteiramente do tipo de controle ActiveX que você usa no modelo de formulário.

Quando você publica um modelo de formulário que contém um controle ActiveX, esse controle deve ser instalado e registrado nos computadores dos usuários para que os usuários abram formulários com base no modelo de formulário. Alguns controles ActiveX, como os incluídos no Microsoft Windows, já podem estar instalados e registrados nos computadores dos usuários. Outros controles ActiveX, como controles personalizados que você desenvolve, podem não ser instalados e registrados. Nesse caso, você deve tomar medidas para instalar e registrar os controles para seus usuários.

Se você planeja instalar seu modelo de formulário com um programa de instalação personalizado, poderá instalar e registrar o controle ActiveX personalizado ao mesmo tempo. Como alternativa, você pode especificar um arquivo de gabinete (.cab) existente no Assistente de Adicionar Controle Personalizado que é usado para instalar o controle nos computadores dos usuários.

Quando você usa o Assistente de Adicionar Controle Personalizado para disponibilizar um controle ActiveX aos seus usuários, você deve especificar se deseja empacotar um arquivo .cab existente junto com seu modelo de formulário. Esse arquivo .cab permite que o controle seja instalado e registrado nos computadores de seus usuários. Se você optar por incluir um arquivo .cab com seu modelo de formulário e seus usuários ainda não tiverem o controle ActiveX instalado, o InfoPath solicitará que eles instalem o controle quando abrirem um formulário com base no modelo de formulário pela primeira vez.

O InfoPath instala e registra automaticamente o controle para usuários se ambos os seguintes requisitos forem atendidos:

  • O arquivo .cab é assinado com um certificado digital que cria uma assinatura digital no arquivo.
  • A assinatura digital é de um desenvolvedor de formulários ou de outro editor confiável. Se o arquivo .cab estiver assinado, mas o editor ainda não for confiável no computador do usuário, o InfoPath exibirá um alerta de segurança e exigirá que o usuário habilite a confiança para o editor.

Início da Página

Considerações de compatibilidade

Ao criar um modelo de formulário no InfoPath, você pode optar por criar um modelo de formulário compatível com o navegador. Quando você cria um modelo de formulário compatível com navegador, os controles ActiveX não estão disponíveis no painel de tarefas Controles porque não podem ser exibidos em um navegador da Web.

Além disso, os controles ActiveX não estão disponíveis em partes de modelo.

Início da Página

Inserir um controle ActiveX em um modelo de formulário

Antes de adicionar um controle ActiveX ao modelo de formulário, você deve disponibilizá-lo no painel de tarefas Controles . O InfoPath inclui um Assistente de Adicionar Controle Personalizado que orienta você durante o processo de seleção do controle ActiveX, incluindo uma instalação .cab arquivo com seu modelo de formulário, se necessário, e especificando as opções de associação e outras propriedades para o controle ActiveX.

Adicionar um controle ActiveX ao painel de tarefas Controles

Se você desenvolver seu próprio controle ActiveX para uso no InfoPath, deverá identificar esse controle como seguro para inicialização e seguro para scripts antes de concluir o procedimento a seguir.

  1. Se o painel de tarefas Controles não estiver visível, clique em Mais Controles no menu Inserir, ou pressione ALT+I, C.

  2. Na parte inferior do painel de tarefas Controles , clique em Adicionar ou Remover Controles Personalizados.

  3. Na caixa de diálogo Adicionar ou Remover Controles Personalizados , clique em Adicionar.

  4. Na primeira página do Assistente de Adicionar Controle Personalizado, clique em Controle ActiveX e clique em Avançar.

  5. Na próxima página do assistente, clique no controle desejado na lista Selecionar um controle e clique em Avançar.

    Observação

    A lista Selecionar um controle mostra os controles ActiveX registrados atualmente em seu computador, incluindo os controles ActiveX incluídos no Microsoft Windows. Se você criou seu próprio controle ActiveX personalizado, deverá registrá-lo para que ele apareça na lista Selecionar um controle . Se os controles ActiveX forem incompatíveis com o InfoPath ou forem considerados inseguros, você não poderá adicioná-los ao InfoPath.

  6. Na próxima página do assistente, faça um dos seguintes procedimentos:

    • Para incluir um arquivo .cab de instalação com seu modelo de formulário, clique em Incluir um arquivo .cab, especifique o arquivo que você deseja usar e clique em Avançar.
    • Para instalar o controle ActiveX usando um programa de instalação personalizado ou se o controle ActiveX já estiver instalado nos computadores dos usuários, clique em Não incluir um arquivo .cab e clique em Avançar.
  7. Na lista de propriedades Binding , faça um dos seguintes procedimentos:

    • Para associar uma propriedade do controle ActiveX a um campo na fonte de dados, clique em um item.

      Observação

      Se o controle ActiveX incluir uma propriedade Value , o InfoPath a selecionará automaticamente, mas você poderá optar por alterá-la.

    • Para deixar o controle ActiveX desvinculado, clique em (não associar).

  8. Clique em Avançar.

  9. Dependendo do tipo de controle ActiveX que você escolheu adicionar, uma lista de propriedades Habilitar ou Desabilitar pode aparecer. Se esse for o caso, clique em uma propriedade e clique em Avançar.

    Observação

    Se o controle incluir uma propriedade Habilitada , o InfoPath a selecionará automaticamente, mas você poderá optar por alterá-la.

  10. Se você especificou uma propriedade de associação na etapa 7, especifique as opções de associação desejadas.
    Como?
    Na lista Tipo de grupo ou campo , faça um dos seguintes procedimentos:

    • Para associar o controle ActiveX a um campo com um tipo de dados simples, clique em Campo (elemento ou atributo). Esse tipo de associação é usado por controles ActiveX simples, como o controle deslizante incluído no Microsoft Windows. Se você selecionar essa opção, deverá especificar um tipo de dados padrão para o controle ActiveX, bem como quaisquer tipos de dados adicionais aos quais o controle ActiveX pode ser vinculado.
    • Para associar o controle ActiveX a um campo com um tipo de dados personalizado, clique em Campo (elemento com tipo de dados personalizado). Esse tipo de associação é usado por controles ActiveX que funcionam como editores para um tipo específico de conteúdo, como um editor de equação que edita MathML. Se você selecionar essa opção, também deverá especificar um namespace para o XML que será editado.
    • Para associar o controle ActiveX a um campo ou grupo, independentemente de seu tipo de dados, clique em Campo ou Grupo (qualquer tipo de dados). Esse tipo de associação é usado por controles ActiveX que analisam informações inseridas em outro lugar no mesmo formulário, como um gráfico ou gráfico, ou por controles ActiveX que manipulam dados XML diretamente.
  11. Clique em Concluir.

  12. Examine a mensagem de confirmação e clique em Fechar para sair do assistente.

  13. Na caixa de diálogo Adicionar ou Remover Controles Personalizados , clique em OK.

Depois que o controle ActiveX aparecer no painel de tarefas Controles , você poderá inseri-lo no modelo de formulário.

Inserir um controle ActiveX em um novo modelo de formulário em branco

Quando você insere um controle Do Microsoft ActiveX no modelo de formulário, o InfoPath insere um controle personalizado associado a um campo ou um grupo na fonte de dados, dependendo das opções especificadas no Assistente de Controle Personalizado adicionar.

Observação

Se outros designers de modelo de formulário em sua organização precisarem usar o mesmo controle ActiveX em seus modelos de formulário e, se esse controle ainda não estiver instalado em seus computadores, você poderá criar um programa de instalação personalizado, como um arquivo microsoft Windows Installer Package (.msi). Este programa de instalação personalizado pode instalar e registrar rapidamente o controle ActiveX para os designers de modelo de formulário.

  1. No modelo de formulário, coloque o cursor onde você deseja inserir o controle.

  2. Se o painel de tarefas Controles não estiver visível, clique em Mais Controles no menu Inserir, ou pressione ALT+I, C.

  3. Em Inserir controles, clique no nome do controle ActiveX que você deseja inserir.

    Observação

    Tenha cuidado ao adicionar controles ActiveX ao modelo de formulário. Os controles ActiveX podem ser projetados de forma que seu uso possa representar um risco à segurança. Recomendamos que você use apenas controles de fontes confiáveis.

  4. Todas as páginas de propriedade específicas para o controle ActiveX serão exibidas junto com as páginas de propriedade padrão do InfoPath para controles ActiveX. Para ver essas páginas de propriedades, clique duas vezes no controle ActiveX no modelo de formulário.

Inserir um controle ActiveX em um modelo de formulário baseado em uma fonte de dados existente

Se você basear o design do seu modelo de formulário em um serviço da Web, banco de dados ou arquivo em linguagem XML existente, o InfoPath deriva os campos e grupos no painel de tarefas Fonte de Dados utilizando essa fonte de dados existente. Nesse cenário, você pode inserir um controle ActiveX arrastando um campo do painel de tarefas Fonte de Dados para o modelo de formulário ou inserindo o controle ActiveX no painel de tarefas Controles , conforme descrito no seguinte procedimento:

  1. No modelo de formulário, coloque o cursor onde você deseja inserir o controle.
  2. Se o painel de tarefas Controles não estiver visível, clique em Mais Controles no menu Inserir, ou pressione ALT+I, C.
  3. Em Inserir controlos, clique no nome do controlo ActiveX que pretende inserir.
  4. Na caixa de diálogo Enlace de Controlo , selecione o campo no qual pretende armazenar os dados do controlo e, em seguida, clique em OK.

Início da Página

Sugestões de segurança

Ao estruturar formulários que incluam controlos ActiveX, deve ter em mente os seguintes problemas de segurança:

  • Os controlos ActiveX utilizados no InfoPath têm restrições mais rigorosas do que as dos controlos ActiveX utilizados no Windows Internet Explorer. Por exemplo, o InfoPath requer que os controlos ActiveX sejam marcados como seguros para scripting e seguros para inicialização. Se desenvolver controlos ActiveX personalizados para utilização em modelos de formulário, tem de implementar a interface IObjectSafety para que o InfoPath reconheça que um controlo específico está marcado como seguro para scripting e seguro para inicialização.
  • Tenha cuidado ao adicionar controlos ActiveX ao modelo de formulário. Os controlos ActiveX podem ser concebidos de forma a que a sua utilização possa representar um risco de segurança. Recomendamos que utilize apenas controlos de origens fidedignas.
  • Os controlos ActiveX não podem ser instalados ou executados em modelos de formulário que tenham um nível restrito de confiança (conforme especificado na caixa de diálogo Opções de Formulário no modo de estrutura).
  • Para obter informações sobre a conceção de controlos ActiveX mais seguros, visite o Web site da Microsoft Developer Network (MSDN).

Início da Página