| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" |
| "http://www.w3.org/TR/html4/loose.dtd"> |
| |
| <html> |
| <head> |
| <meta http-equiv="content-type" content="text/html; charset=UTF-8"> |
| <!-- -*- xhtml -*- --> |
| <title>Início rápido do plug-in do NetBeans para Plataforma NetBeans 6.5</title> |
| <meta name="AUDIENCE" content="NBUSER"> |
| <meta name="TYPE" content="ARTICLE"> |
| <meta name="EXPIRES" content="N"> |
| <meta name="developer" content="gwielenga@netbeans.org"> |
| <meta name="indexed" content="y"> |
| |
| <meta name="description" |
| content="A guide describing how to implement a Google Toolbar Module into NetBeans IDE."> |
| <link rel="stylesheet" type="text/css" href="https://netbeans.org/netbeans.css"> |
| </head> |
| |
| <!-- Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved. --> |
| <!-- Use is subject to license terms. --> |
| |
| <body> |
| <h1><a name="top"></a>Início rápido de plug-in do NetBeans</h1> |
| |
| <p>Bem-vindo ao desenvolvimento do plug-in do NetBeans! |
| |
| </p><p>Este tutorial fornece uma introdução muito simples e rápida ao fluxo de trabalho do desenvolvimento do plug-in do NetBeans orientando-o através da criação de uma nova barra de ferramentas para o NetBeans IDE. Após concluir este tutorial, você terá adquirido um conhecimento geral sobre como criar, construir e instalar plug-ins do NetBeans IDE. |
| |
| </p><p>Após concluir este tutorial, você pode passar para a <a href="https://platform.netbeans.org/tutorials">trilha do aprendizado da plataforma NetBeans</a> A trilha do aprendizado fornece tutoriais abrangentes que destacam uma ampla gama de APIs do NetBeans para uma variedade de tipos de aplicativos. Se não desejar criar um aplicativo "Hello world", ignore este tutorial e vá direito para a trilha do aprendizado. |
| |
| </p><p><strong class="notes">Observação:</strong> este documento usa a versão NetBeans IDE 6.5. Se você estiver usando o NetBeans IDE 0.x, consulte <a href="60/nbm-google_pt_BR.html">a versão 6.0/6.1 deste documento</a>. |
| |
| |
| </p><p><b>Conteúdo</b></p> |
| |
| <img src="../images/articles/65/netbeans-stamp65.gif" class="stamp" width="114" height="114" alt="O conteúdo desta página se aplica ao NetBeans IDE 6.5" title="O conteúdo desta página se aplica ao NetBeans IDE 6.5"> </p> |
| <ul class="toc"> |
| <li><a href="#creating-module-project">Configurando o projeto de módulo</a></li> |
| <li><a href="#coding-module">Codificando o módulo</a> |
| <ul> |
| <li><a href="#creating-action">Criando a ação</a></li> |
| <li><a href="#creating-panel">Criando o formulário JPanel</a></li> |
| <li><a href="#resolving-errors">Resolvendo erros</a></li> |
| <li><a href="#overriding">Substituindo getToolbarPresenter()</a></li> |
| </ul> |
| </li> |
| <li><a href="#compiling">Compilando, instalando e usando o módulo</a> |
| </li><li><a href="#sharing-plugin">Compartilhando o módulo</a></li> |
| </ul> |
| |
| <p><b>Para seguir este tutorial, você preciso dos softwares e recursos listados na tabela seguinte.</b></p> |
| |
| <table> |
| <tbody> |
| <tr> |
| <th class="tblheader" scope="col">Software ou recurso</th> |
| <th class="tblheader" scope="col">Versão necessária</th> |
| </tr> |
| <tr> |
| <td class="tbltd1"><a href="https://netbeans.org/downloads/index.html">NetBeans IDE</a></td> |
| <td class="tbltd1">versão 6.5 Java</td> |
| </tr> |
| <tr> |
| <td class="tbltd1"><a href="http://java.sun.com/javase/downloads/index.jsp">Java Developer Kit (JDK)</a></td> |
| <td class="tbltd1">Versão 6 ou<br/>versão 5</td> |
| </tr> |
| </tbody> |
| </table> |
| |
| <p class="tips">Opcionalmente, para fins de solução de problemas, você pode <a href="http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=13794">baixar a amostra completa</a> e inspecionar os códigos-fonte. |
| |
| </p><p>A barra de ferramentas criada neste tutorial terá esta aparência:</p> |
| |
| <img src="../images/tutorials/google/60/googlebar-2.png" border="1" |
| alt="Barra de ferramentas do Google mostrando a string de pesquisa de amostra"> |
| |
| <p></p><p>Quando o usuário pressionar Enter na barra de ferramentas acima, o navegador padrão do IDE será aberto e o texto na barra de ferramentas será enviado para uma pesquisa do Google, com os resultados disponíveis no navegador aberto. Para criar esta barra de ferramentas, você usará as <a href="http://bits.netbeans.org/dev/javadoc/">APIs do NetBeans</a> para aprimorar o conjunto de recursos do IDE. Especificamente, crie uma ação que seja chamada por um botão na barra de ferramentas. Em seguida, crie um Swing JPanel contendo <tt>JLabel</tt> e <tt>JTextField</tt> como componentes de GUI. |
| Finalmente, substitua o método <tt><a href="http://bits.netbeans.org/dev/javadoc/org-openide-util/org/openide/util/actions/CallableSystemAction.html#getToolbarPresenter()">getToolbarPresenter()</a></tt> da ação para retornar o JPanel de forma que ele seja exibido na barra de ferramentas, em vez do botão. |
| |
| |
| <!-- ===================================================================================== --> |
| |
| <br> |
| </p><h2 class="tutorial"><a name="creating-module-project"></a>Configurando o projeto de módulo</h2> |
| |
| <p>Ao desenvolver o módulo, verifique se a estrutura do projeto está configurada corretamente. |
| O NetBeans IDE oferece um assistente para Projeto de módulo que configura todos os arquivos básicos necessários para um módulo.</p> |
| |
| <ol> |
| <li>Escolha Arquivo > Novo projeto (Ctrl-Shift-N). Em Categorias, selecione Módulos do NetBeans. Em Projetos, selecione Módulo . Clique em Próximo.</li> |
| <li>No painel Nome e localização, digite <tt>GoogleToolbar</tt> no campo Nome do projeto. |
| Altere Local do projeto para qualquer diretório no computador. Deixe marcadas a opção Módulo independente e a caixa de verificação Definir como projeto principal. Clique em Próximo.</li> |
| <li>No painel Configuração básica de módulos, digite <tt>org.myorg.googletoolbar</tt> no Nome base de código. |
| </li><li>Selecione "Gerar camada XML". Deixe as localizações do pacote de localizações e a camada XML, de modo que sejam armazenados em um pacote com o nome <tt>org/myorg/googletoolbar</tt>. Clique em Terminar.</li> |
| </ol> |
| |
| <p>O IDE cria o projeto <tt>GoogleToolbar</tt>. O projeto contém todos os metadados de projeto e fontes, como o script de construção Ant do projeto. O projeto se abre no IDE. Você pode visualizar a estrutura lógica na janela Projetos (Ctrl+1) e a estrutura de arquivos na janela Arquivos (Ctrl+2). |
| |
| <br> |
| |
| |
| <!-- ===================================================================================== --> |
| |
| <br> |
| </p><h2><a name="coding-module"></a>Codificando o módulo da </h2> |
| |
| <p>Para codificar o módulo, você precisa completar as seguintes etapas:</p> |
| |
| <ul> |
| <li><a href="#creating-action">Criando a ação</a></li> |
| <li><a href="#creating-panel">Criando o JPanel</a></li> |
| <li><a href="#resolving-errors">Resolvendo erros</a></li> |
| <li><a href="#overriding">Substituindo getToolbarPresenter()</a></li> |
| </ul> |
| |
| <div class="indent"> |
| <h3 class="tutorial"><a name="creating-action"></a>Criando a ação</h3> |
| |
| <ol> |
| <li>Clique com o botão direito do mouse no nó do projeto e escolha Nova > Ação (se Ação não estiver exibida, acesse-a escolhendo Outra, em seguida, no assistente para Novo arquivo em Categorias, selecione Desenvolvimento de módulo). |
| Clique em Próximo.</li> |
| <li>No painel Tipo de ação, mantenha a configuração padrão, que permitirá que o IDE crie uma ação que subclassifique <tt>ActionListener</tt>, como mostrado abaixo: |
| |
| <br><br> |
| <img src="../images/tutorials/google/65/action-wiz-1.png" alt="Etapa 1 do assistente para Nova ação"> |
| |
| <br><br> |
| Clique em Próximo. |
| |
| </li><li>No painel Registro com GUI, selecione Editar na lista suspensa Categoria. A lista suspensa Categoria |
| controla onde uma ação é mostrada no editor de atalhos de teclado no IDE. Em seguida, desmarque |
| Item de menu global e selecione Botão da barra de ferramentas global. Na lista suspensa Barra de ferramentas, selecione Arquivo, em seguida, na lista suspensa Posição, selecione <i>qualquer posição na lista suspensa</i>, como a mostrada abaixo: |
| |
| <br><br> |
| <img src="../images/tutorials/google/65/action-wiz-2.png" /> |
| |
| <br><br> |
| Clique em Próximo. |
| |
| </li><li><p>No painel Novo e localização, digite <tt>GoogleAction</tt> como o Nome da classe e <tt>Google |
| Action</tt> como o Nome de exibição. Vá para um ícone que tenha uma dimensão de 16x16 pixels. Na verdade, você não usará o ícone - em vez disso, exibirá o formulário JPanel que criará na próxima seção. Entretanto, o assistente para Nova ação requer que você especifique um ícone. Portanto, o ícone poderia ser |
| de qualquer dimensão, já que você não o usará. Clique em Terminar.</p> |
| <p><b class="notes">Observação:</b> <tt>GoogleAction.java</tt> é adicionado ao pacote <tt>org.myorg.googletoolbar</tt> na janela Projetos. |
| |
| </p></li> |
| </ol> |
| |
| <h3 class="tutorial"><a name="creating-panel"></a>Criando o JPanel</h3> |
| <p>Nesta seção, você criará um JPanel que será a barra de ferramentas exibida como parte da principal barra de ferramentas do aplicativo. |
| </p><ol> |
| <li>Clique com o botão direito do mouse no nó do projeto e escolha Novo > Outro. Em Categorias, selecione Formulários GUI Swing. |
| Em Projetos, selecione Formulário JPanel. Clique em Próximo.</li> |
| <li>No painel Nome e localização, digite <tt>GooglePanel</tt> como o Nome da classe e selecione o painel na lista suspensa. Clique em Terminar. <tt>GooglePanel.java</tt> é adicionado ao pacote e é aberto na visualização Design no Editor de código-fonte.</li> |
| <li>Coloque o cursor no canto inferior direito do JPanel, em seguida, selecione o JPanel e arraste o cursor para redimensioná-lo, de forma que sua largura e cumprimento fiquem parecidos com os de uma barra de ferramentas, como mostrado abaixo: |
| |
| <br><br> |
| <img src="../images/tutorials/google/60/jpanel-2.png" border="1" alt="JPanel redimensionado"></li> |
| |
| <li>Arraste um item JTextField e um item JLabel da Paleta (Ctrl+Shift+8) diretamente para o JPanel, em seguida, redimensione o JPanel e os outros dois itens, para que eles se encaixem. Finalmente, clique no |
| JLabel e altere seu texto para <tt>Google:</tt>, em seguida, exclua o texto padrão no JTextField. |
| Seu JPanel agora deve se parecer com a imagem mostrada abaixo: |
| |
| <br><br> |
| <img src="../images/tutorials/google/60/jpanel-3.png" border="1" |
| alt="JTextField e JLabel incluídos no JPanel"></li> |
| |
| <li>Verifique se o Inspetor de propriedades está aberto (Janela > Navegação > Inspetor), em seguida, clique com o botão direito do mouse em JTextField e escolha Eventos > Tecla > keyTyped. Isso gera um método <tt>jTextField1KeyTyped()</tt> |
| no código-fonte <tt>GooglePanel.java</tt>, que é exibido no Editor de código-fonte, como mostrado abaixo: |
| |
| <br><br> |
| <img src="../images/tutorials/google/60/jpanel-4.png" border="1" |
| alt="Método JTextField1KeyTyped() gerado no código-fonte"></li> |
| |
| <li>No Editor de código-fonte, na visualização Código-fonte do <tt>GooglePanel.java</tt>, preencha o método <tt>jTextField1KeyTyped()</tt>, da seguinte forma (texto inserido mostrado em <strong>negrito</strong>): |
| |
| <pre class="examplecode"> |
| private void jTextField1KeyTyped(java.awt.event.KeyEvent evt) { |
| <strong>int i = evt.getKeyChar(); |
| if (i==10){//The ENTER KEY |
| // exibimos a url do googlel. |
| try{ |
| URLDisplayer.getDefault().showURL |
| (new URL("http://www.google.com/search?hl=en&q="+jTextField1.getText()+"&btnG=Google+Search")); |
| } catch (Exception eee){ |
| return;//nothing much to do |
| } |
| }</strong> |
| }</pre> |
| </li> |
| </ol> |
| |
| <p>Se precisar, clique com o botão direito do mouse no Editor de código-fonte e escolha Formatar (Alt+Shift+F).</p> |
| |
| <h3 class="tutorial"><a name="resolving-errors"></a>Resolvendo erros</h3> |
| |
| <p>Observe que uma linha de código está sublinhada em vermelho, indicando erros. Isso acontece porque pacotes necessários ainda não foram importados. Coloque o cursor sobre o ícone da lâmpada exibido na coluna imediatamente à esquerda da linha vermelha de <tt>URLDisplayer</tt>. É exibida |
| uma dica de ferramenta, indicando o motivo do erro: |
| |
| <br><br> |
| <img src="../images/tutorials/google/60/tooltip.png" border="1" |
| alt="dica de ferramenta do erro URLDisplayer no Editor de código-fonte"></p> |
| |
| <p>Para resolver isso, você precisa disponibilizar a classe <tt>HtmlBrowser.URLDisplayer</tt>, incluída no pacote <a href="http://bits.netbeans.org/dev/javadoc/org-openide-awt/org/openide/awt/package-summary.html"> |
| <tt>org.openide.awt</tt></a>, para o seu projeto. Para isso, execute as seguintes etapas:</p> |
| |
| <ol> |
| <li>Clique com o botão direito do mouse no nó do projeto na janela Projetos e escolha Propriedades. Na caixa de diálogo Propriedades do projeto, selecione Bibliotecas sob o título Categorias. Em seguida, em Dependências de módulo, |
| clique no botão Adicionar. A caixa de diálogo Adicionar dependência de módulo é exibida.</li> |
| <li>Na caixa de texto do filtro exibida na parte inferior da caixa de diálogo Adicionar dependência de módulo, comece a digitar <tt>URLDisplayer</tt> e observe que a seleção dos módulos retornados se estreita até que somente a listagem restante seja a <a href="http://bits.netbeans.org/dev/javadoc/org-openide-awt/overview-summary.html">API de utilitários de IU</a>: |
| |
| <br><br> |
| <img src="../images/tutorials/google/60/add-module-dependency.png" |
| alt="Caixa de diálogo Adicionar dependência de módulo exibindo a API de utilitários de IU"> |
| |
| <br><br> |
| Clique em OK, em seguida, clique em OK novamente para sair da caixa de diálogo Propriedades do projeto.</li> |
| <li>Clique com o botão direito do mouse no Editor de código-fonte e escolha Importações fixas (Alt+Shift+F). A caixa de diálogo Corrigir todas as importações é exibida, listando os caminhos sugeridos para classes não reconhecidas: |
| |
| <br><br> |
| <img src="../images/tutorials/google/60/fix-all-imports.png" |
| alt="Caixa de diálogo Corrigir todas as importações contendo caminhos sugeridos para classes não reconhecidas"> |
| |
| <br><br> |
| Clique em OK. O IDE cria as instruções de importação seguintes para <tt>GooglePanel.java</tt>: |
| |
| <pre> |
| import java.net.URL; |
| import org.openide.awt.HtmlBrowser.URLDisplayer; |
| </pre> |
| |
| Observe também que todos os erros desaparecem do Editor de código-fonte.</li> |
| </ol> |
| |
| <h3 class="tutorial"><a name="overriding"></a>Substituindo getToolbarPresenter()</h3> |
| |
| <p>Como o JPanel que você criou é o componente real que exibirá a barra de ferramentas do Google, é preciso substituir o método <a href="http://bits.netbeans.org/dev/javadoc/org-openide-util/org/openide/util/actions/CallableSystemAction.html#getToolbarPresenter()"> |
| <tt>getToolbarPresenter()</tt></a> na classe da ação. Em <tt>GoogleAction.java</tt>, faça o |
| seguinte:</p> |
| |
| <ol> |
| |
| |
| <li>Abra <tt>GoogleAction.java</tt> e observe que possui este conteúdo: |
| |
| <pre class="examplecode"> |
| package org.myorg.googletoolbar; |
| |
| import java.awt.event.ActionEvent; |
| import java.awt.event.ActionListener; |
| |
| public final class GoogleAction implements ActionListener { |
| |
| public void actionPerformed(ActionEvent e) { |
| // TODO implement action body |
| } |
| |
| }</pre> |
| |
| </li><li>Altere a assinatura para que <tt>CallableSystemAction</tt> estenda a classe, em vez de <tt>ActionListener</tt> implementando-a. Adicione as sentenças import mostradas abaixo e, neste estágio, nada deve ser retornado para cada um dos métodos exigidos. A classe <tt>GoogleAction</tt> agora deve ter esta aparência: |
| |
| <pre class="examplecode"> |
| package org.myorg.googletoolbar; |
| |
| import org.openide.util.HelpCtx; |
| import org.openide.util.actions.CallableSystemAction; |
| |
| public final class GoogleAction extends CallableSystemAction { |
| |
| @Override |
| public void performAction() { |
| |
| } |
| |
| @Override |
| public String getName() { |
| return ""; |
| } |
| |
| @Override |
| public HelpCtx getHelpCtx() { |
| return null; |
| } |
| |
| }</pre> |
| |
| </li><li>Abra o arquivo <tt>layer.xml</tt> e você verá o seguinte: |
| |
| <pre class="examplecode"> |
| <?xml version="1.0" encoding="UTF-8"?> |
| <!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.2//EN" "https://netbeans.org/dtds/filesystem-1_2.dtd"> |
| <filesystem> |
| <folder name="Actions"> |
| <folder name="File"> |
| <file name="org-myorg-googletoolbar-GoogleAction.instance"> |
| <attr name="SystemFileSystem.localizingBundle" stringvalue="org.myorg.googletoolbar.Bundle"/> |
| <attr name="delegate" newvalue="org.myorg.googletoolbar.GoogleAction"/> |
| <attr name="displayName" bundlevalue="org.myorg.googletoolbar.Bundle#CTL_GoogleAction"/> |
| <attr name="iconBase" stringvalue="org/myorg/googletoolbar/icon.png"/> |
| <attr name="instanceCreate" methodvalue="org.openide.awt.Actions.alwaysEnabled"/> |
| <attr name="noIconInMenu" stringvalue="false"/> |
| </file> |
| </folder> |
| </folder> |
| <folder name="Toolbars"> |
| <folder name="File"> |
| <file name="org-myorg-googletoolbar-GoogleAction.shadow"> |
| <attr name="originalFile" stringvalue="Actions/File/org-myorg-googletoolbar-GoogleAction.instance"/> |
| <attr name="position" intvalue="0"/> |
| </file> |
| </folder> |
| </folder> |
| </filesystem></pre> |
| |
| <p>O conteúdo mostrado acima foi criado pelo assistente de Nova ação. Exclua as seguintes linhas no arquivo<tt>layer.xml</tt>, porque elas não são necessárias no contexto deste tutorial - as linhas que definem os atributos "delegate", "displayName", "iconBase" e "instanceCreate". |
| |
| |
| </p></li><li>De volta à classe <tt>GoogleAction</tt>, abaixo da declaração de classe, declare e defina a seguinte variável: |
| <pre class="examplecode"> |
| GooglePanel retValue = new GooglePanel(); |
| </pre></li> |
| <li>Novamente na classe <tt>GoogleAction</tt>, defina o método <tt>getToolbarPresenter()</tt> para retornar a variável <tt>retValue</tt>: |
| |
| <pre class="examplecode"> |
| @Override |
| public java.awt.Component getToolbarPresenter() { |
| return retValue; |
| } |
| </pre> |
| </li> |
| </ol> |
| |
| <p>Nesta seção, você criou um JPanel que exibirá um JTextField e um JLabel. Se você pressionar Enter no JTextField, seu conteúdo será enviado para uma pesquisa no Google. O navegador de HTML será aberto e você verá o resultado da pesquisa no Google. A classe da ação é usada para integrar o JPanel na barra de ferramentas do aplicativo, como registrado no arquivo <tt>layer.xml</tt>. |
| |
| </p></div> |
| |
| <!-- ======================================================================================= --> |
| |
| <br> |
| <h2><a name="compiling"></a>Compilando, instalando e usando o módulo</h2> |
| |
| <p>O NetBeans IDE usa um script de construção Ant para compilar e instalar seu módulo no IDE. O script de construção foi criado para você quando o projeto do módulo foi criado em <a href="#creating-module-project">Configurando o projeto de módulo</a> acima. Agora que o módulo está pronto para ser compilado e adicionado ao IDE, você pode usar o suporte a Ant do NetBeans IDE a fim fazê-lo:</p> |
| |
| <ol> |
| <li>Na janela Projetos, clique com o botão direito do mouse no nó do projeto <tt>GoogleToolbar</tt> e escolha Executar. O módulo é construído e instalado em uma nova instância do IDE (por exemplo, a plataforma de destino). Por padrão, a plataforma de destino padrão é a versão do IDE em que você está trabalhando no momento. A plataforma de destino se abre, de modo que você possa experimentar o novo módulo.</li> |
| <li>Quando ele é instalado com êxito, o módulo adiciona um novo botão na barra de ferramentas Editar do IDE. |
| |
| <p></p><p><b class="notes">Observação:</b> O botão da barra de ferramentas não exibe um ícone. Em vez disso, ele exibe o JPanel que você criou em |
| <a href="#creating-panel">Criando o JPanel</a> acima: |
| |
| <br><br> |
| <img src="../images/tutorials/google/60/googlebar.png" border="1" |
| alt="Barra de ferramentas do Google incorporada na barra de ferramentas Editar do IDE"></p></li> |
| |
| <li>Digite uma string de pesquisa no campo de texto: |
| |
| <br><br> |
| <img src="../images/tutorials/google/60/googlebar-2.png" border="1" |
| alt="Barra de ferramentas do Google mostrando a string de pesquisa de amostra"></li> |
| |
| <li>Pressione Enter. O navegador padrão do IDE é iniciado, se você tiver definido um na janela Opções. A URL do Google e a sua string de pesquisa são enviadas para o navegador e uma pesquisa é realizada. Quando os resultados da pesquisa são retornados, você pode visualizá-los no navegador.</li> |
| </ol> |
| |
| <br> |
| <h2 class="tutorial"><a name="sharing-plugin"></a>Compartilhando o módulo</h2> |
| |
| <p>Agora que você construiu um módulo de trabalho que aprimora o IDE, por que não compartilhá-lo com outros desenvolvedores? |
| O NetBeans IDE oferece uma forma fácil de criar um arquivo de módulo binário do NetBeans (.nbm), que é um meio universal de permitir que outros o experimentem em suas próprias versões do IDE (na verdade, isso é o que você fez em <a href="#compiling">Compilando, instalando e usando o módulo</a> acima). |
| |
| </p><p>Para criar um binário do módulo, faça o seguinte:</p> |
| |
| Na janela Projetos, clique com o botão direito do mouse no nó do projeto <tt>GoogleToolbar</tt> e escolha Criar NBM. O novo arquivo NBM é criado e você pode visualizá-lo na janela Arquivos (Ctrl+2): |
| |
| <br><br> |
| <img src="../images/tutorials/google/60/create-nbm.png" border="1" alt="novo arquivo NBM exibido na janela Arquivos"> |
| |
| |
| <br> |
| <div class="feedback-box"><a name="feedback"></a> <a href="https://netbeans.org/about/contact_form.html?to=3&subject=Feedback:%20Google%20Toolbar%20Module%20Tutorial"> Envie-nos seus comentários</a></div> |
| <br style="clear:both;" /> |
| <!-- ======================================================================================== --> |
| |
| <h2><a name="nextsteps"></a>Veja também</h2> |
| |
| <p>Isto conclui o Início rápido do plug-in do NetBeans. Este documento descreveu como criar um plug-in que adiciona uma barra de ferramentas do Google Search ao IDE. |
| Para obter mais informações sobre a criação e o desenvolvimento de plug-ins, consulte os seguintes recursos: |
| </p><ul> |
| <p></p><li><a href="https://platform.netbeans.org/tutorials">Outros tutoriais relacionados</a></li> |
| <p></p><li><a href="http://bits.netbeans.org/dev/javadoc/">Javadoc da API da NetBeans </a></li> |
| </ul> |
| |
| <hr> |
| <!-- ======================================================================================== --> |
| |
| |
| </body> |
| </html> |