<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
    <!-- -*- xhtml -*- -->
    <title>针对 NetBeans 平台 6.8 的 NetBeans 插件快速入门</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 http-equiv="Content-Type" content="text/html; charset=UTF-8">   
    <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) 2009, 2010, Oracle and/or its affiliates. All rights reserved. -->
        <!--     Use is subject to license terms.-->

<body>
<h1><a name="top"></a>NetBeans 插件快速入门</h1>

    <p>欢迎了解有关开发 NetBeans 插件的知识！

  <p>本教程将指导您为 NetBeans IDE 创建一个新的工具栏，从而为 NetBeans 插件的开发工作流程提供一个快速简介。学习完本教程后，您将对如何为 NetBeans IDE 创建、生成和安装插件有一个基本了解。
   
   <p>完成本教程后，您可以继续参阅 <a href="https://netbeans.org/kb/trails/platform_zh_CN.html">NetBeans 平台学习资源</a>。该学习资源提供了综合性教程，这些教程重点介绍适用各种应用程序类型的一系列 NetBeans API。如果您不希望创建 &quot;Hello World&quot; 应用程序，则可以跳过本教程，而直接阅读学习资源。 

   <p><b class="notes">注意：</b>本文档使用的是 NetBeans IDE 6.8 发行版。如果使用的是早期版本，请参见<a href="67/nbm-google_zh_CN.html">本文档的 6.7 版</a>。</p>
   
   <p><b>目录</b></p>
         
   <p><img src="../images/articles/69/netbeans-stamp7-8-9.png" class="stamp" width="114" height="114" alt="本页上的内容适用于 NetBeans IDE 6.5、6.7、6.8" title="本页上的内容适用于 NetBeans IDE 6.5、6.7、6.8" /></p>
      <ul class="toc">
        <li><a href="#creating-module-project">设置模块项目</a></li>
        <li><a href="#coding-module">编写模块代码</a>
        <ul>
            <li><a href="#creating-action">创建操作</a></li>
            <li><a href="#creating-panel">创建 JPanel 窗体</a></li>
            <li><a href="#resolving-errors">解决错误</a></li>
            <li><a href="#overriding">实现 Presenter.Toolbar</a></li>
        </ul>
        </li>
        <li><a href="#compiling">编译、安装和使用模块</a>
        <li><a href="#sharing-plugin">共享模块</a></li>
      </ul>
         
<p><b>要学习本教程，您需要具备下表中列出的软件和资源。</b></p>

 <table>
        <tbody>
            <tr>
                <th class="tblheader" scope="col">软件或资源</th>
                <th class="tblheader" scope="col">要求的版本</th>
            </tr> 
            <tr>
                <td class="tbltd1"><a href="https://netbeans.org/downloads/index.html">NetBeans IDE</a></td>
                <td class="tbltd1">6.7 或更高版本</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">版本 6 或<br/>版本 5</td>
            </tr>
        </tbody>
    </table>
    
   <p class="tips">（可选）要解决疑难问题，可以<a href="http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp?pluginid=13794">下载完整的样例</a>并查看其源代码。
    
    <p>您在本教程中创建的工具栏将如下所示：</p>

    <img src="../images/tutorials/google/60/googlebar-2.png" border="1"
            alt="显示样例搜索字符串的 Google 工具栏">
        
    <p><p>当用户在以上工具栏中按 Enter 键时，IDE 的缺省浏览器打开，同时工具栏中的文本会发送至 Google 搜索，并在打开的浏览器中显示搜索结果。要创建此工具栏，您可以使用 <a href="http://bits.netbeans.org/dev/javadoc/">NetBeans API</a> 来增强 IDE 的功能集。具体而言，您将创建一个由工具栏中的按钮所调用的操作。然后，再创建一个包含 GUI 组件 <tt>JLabel</tt> 和 <tt>JTextField</tt> 的 Swing JPanel。最后，您将实现用于返回 JPanel 的 <a href="http://bits.netbeans.org/dev/javadoc/org-openide-util/org/openide/util/actions/Presenter.Toolbar.html"><tt>Presenter.Toolbar</tt></a>，以使 JPanel 显示在工具栏而不是按钮中。
    
<!-- ===================================================================================== -->  

<br>
<h2 class="tutorial"><a name="creating-module-project"></a>设置模块项目</h2>

<p>开发模块时，必须确保正确设置项目的结构。NetBeans IDE 提供了一个模块项目向导，用于设置模块所需的全部基本文件。</p>
    
<ol>
    <li>选择“文件”&gt;“新建项目”(Ctrl+Shift+N)。在“类别”下选择“NetBeans 模块”。在“项目”下选择“模块”。单击“下一步”。</li>
    <li>在“名称和位置”面板的“项目名称”字段中键入 <tt>GoogleToolbar</tt>。将项目位置更改为计算机上的任意目录。将“独立模块”选项和“设置为主项目”复选框保留为选中状态。单击“下一步”。</li>
    <li>在“基本模块配置”面板的“代码名称基”中键入 <tt>org.myorg.googletoolbar</tt>。 
    <li>选择“生成 XML 层”。保留本地化包和 XML 层文件的位置，以将其存储在名为 <tt>org/myorg/googletoolbar</tt> 的包中。单击“完成”。</li>
</ol>
    
<p>IDE 将创建 <tt>GoogleToolbar</tt> 项目。此项目包含所有源代码和项目 meta 数据，例如项目的 Ant 生成脚本。此项目在 IDE 中打开。您可以在“项目”窗口 (Ctrl+1) 中查看其逻辑结构，在“文件”窗口 (Ctrl+2) 中查看其文件结构。

 <p>如果展开“重要文件”节点，则可以打开“模块清单”，其内容如下所示：

<pre class="examplecode">Manifest-Version: 1.0
OpenIDE-Module: org.myorg.googletoolbar
OpenIDE-Module-Layer: org/myorg/googletoolbar/layer.xml
OpenIDE-Module-Localizing-Bundle: org/myorg/googletoolbar/Bundle.properties
OpenIDE-Module-Specification-Version: 1.0</pre>

<p>有关这些特定于 NetBeans 的清单键的详细信息，请参阅 <a href="http://bits.netbeans.org/dev/javadoc/org-openide-modules/org/openide/modules/doc-files/api.html">NetBeans 模块 API</a> Javadoc 描述。

    
<br>


<!-- ===================================================================================== -->

<br>
<h2><a name="coding-module"></a>编写模块代码</h2>

<p>要编写模块代码，需要完成以下步骤：</p>

<ul>
    <li><a href="#creating-action">创建操作</a></li>
    <li><a href="#creating-panel">创建 JPanel</a></li>
    <li><a href="#resolving-errors">解决错误</a></li>
    <li><a href="#overriding">重写 getToolbarPresenter()</a></li>
</ul>

<div class="indent">
    <h3 class="tutorial"><a name="creating-action"></a>创建操作</h3>
    
    <ol>
        <li>右键单击项目节点，然后选择“新建”&gt;“操作”（如果未显示“操作”，请选择“其他”，然后在“新建文件”向导的“类别”下选择“模块开发”，此时应显示“操作”）。单击“下一步”。</li>
        <li>在“操作类型”面板中保留缺省设置（IDE 可以通过此设置创建作为 <tt>ActionListener</tt> 子类的操作），如下所示：
        
            <br><br>
            <img src="../images/tutorials/google/65/action-wiz-1.png" alt="“新建操作”向导的第 1 步">
            
            <br><br>
            单击“下一步”。
        
        <li>在“GUI 注册”面板中，从“类别”下拉列表中选择“文件”。“类别”下拉列表用于控制操作在 IDE 的快捷键编辑器中的显示位置。接下来，取消选中“全局菜单项”，然后选中“全局工具栏按钮”。在“工具栏”下拉列表中选择“文件”，然后在“位置”下拉列表中选择“下拉列表中的任何位置<i></i>”，如下所示：
        
            <br><br>
            <img src="../images/tutorials/google/65/action-wiz-2.png" />
            
            <br><br>       
            单击“下一步”。
        
        <li><p>在“名称和位置”面板的“类名”中键入 <tt>GoogleAction</tt>，在“显示名称”中键入 <tt>Google Action</tt>。找到一个尺寸为 16x16 像素的图标。实际上，您不会用到这个图标，真正显示的图标将是下面一节中创建的 JPanel 窗体。只是，“新建操作”向导要求指定一个图标。因此，该图标可以是任意尺寸，因为您根本不会用到它。单击“完成”。</p> 
            <p><b class="notes">注意：</b><tt>GoogleAction.java</tt> 将被添加到“项目”窗口的 <tt>org.myorg.googletoolbar</tt> 包中。
         
            </li>
    </ol>
    
    <h3 class="tutorial"><a name="creating-panel"></a>创建 JPanel</h3>
    <p>在此部分，将创建一个 JPanel 作为工具栏，它将显示在应用程序主工具栏中。
    <ol>
        <li>右键单击项目节点，然后选择“新建”&gt;“其他”。在“类别”下，选择“Swing GUI 窗体”。在“项目”下选择“JPanel 窗体”。单击“下一步”。</li>
        <li>在“名称和位置”面板的“类名”中键入 <tt>GooglePanel</tt>，然后从下拉列表中选择包。单击“完成”。<tt>GooglePanel.java</tt> 将被添加到该包中，并在源代码编辑器的“设计”视图中将其打开。</li>
        <li>将光标放在 JPanel 的右下角，然后选择 JPanel 并拖动光标来调整大小，以使其宽度和长度与工具栏类似，如下所示：
        
            <br><br>
            <img src="../images/tutorials/google/60/jpanel-2.png" border="1" alt="调整大小后的 JPanel"></li>
        
        <li>将一个 JTextField 项和一个 JLabel 项从组件面板 (Ctrl+Shift+8) 直接拖至 JPanel 中，然后调整 JPanel 及另外两个项的大小，使它们排放适宜。最后，单击 JLabel 并将其文本更改为 <tt>Google:</tt>，然后删除 JTextField 中的缺省文本。现在，您的 JPanel 应该与下面显示的图像类似：
        
            <br><br>
            <img src="../images/tutorials/google/60/jpanel-3.png" border="1" 
                alt="JPanel 中包含的 JTextField 和 JLabel"></li>
        
        <li>确保属性检查器（“窗口”&gt;“导航”&gt;“检查器”）处于打开状态，然后右键单击 JTextField 并选择“事件”&gt; &quot;Key&quot; &gt; &quot;keyTyped&quot;。这将在 <tt>GooglePanel.java</tt> 源代码中生成一个 <tt>jTextField1KeyTyped()</tt> 方法，并将其显示在源代码编辑器中，如下所示：
        
            <br><br>
            <img src="../images/tutorials/google/60/jpanel-4.png" border="1" 
                alt="在源代码中生成的 jTextField1KeyTyped() 方法"></li>
        
        <li>在源代码编辑器的 <tt>GooglePanel.java</tt>“源”视图中，填写 <tt>jTextField1KeyTyped()</tt> 方法，如下所示（插入的文本以<strong>粗体</strong>显示）：
        
        <pre class="examplecode">    
private void jTextField1KeyTyped(java.awt.event.KeyEvent evt) {
    <strong>int i = evt.getKeyChar();
    if (i==10){//The ENTER KEY
        // we display the google url.
        try{
            URLDisplayer.getDefault().showURL
                    (new URL(&quot;http://www.google.com/search?hl=en&amp;q=&quot;+jTextField1.getText()+&quot;&amp;btnG=Google+Search&quot;));
        } catch (Exception eee){
            return;//nothing much to do
        }
    }</strong>
}</pre>
        </li>
    </ol>
        
    <p>如果需要，请在源代码编辑器中单击鼠标右键，然后选择“格式化”(Alt+Shift+F)。</p>
           
    <h3 class="tutorial"><a name="resolving-errors"></a>解决错误</h3>
            
    <p>请注意，某个代码行带有红色下划线，这表示存在错误。其原因是尚未导入所需的包。将光标置于紧邻 <tt>URLDisplayer</tt> 所在行（带有红色下划线）左侧的栏中显示的灯泡图标上。随即显示一条工具提示，说明出现此错误的原因：
        
        <br><br>
        <img src="../images/tutorials/google/60/tooltip.png" border="1" 
            alt="源代码编辑器中的 URLDisplayer 错误工具提示"></p>
                        
    <p>为了解决此错误，需要让您的项目可访问 <tt><a href="http://bits.netbeans.org/dev/javadoc/org-openide-awt/org/openide/awt/HtmlBrowser.URLDisplayer.html">HtmlBrowser.URLDisplayer</a></tt> 类（包含在 <a href="http://bits.netbeans.org/dev/javadoc/org-openide-awt/org/openide/awt/package-summary.html"><tt>org.openide.awt</tt></a> 包中）。为此，请执行以下步骤：</p>
        
    <ol>
        <li>右键单击“项目”窗口中的项目节点，然后选择“属性”。在显示的“项目属性”对话框中，选择“类别”标题下的“库”。然后，在“模块依赖关系”下，单击“添加”按钮。将显示“添加模块依赖关系”对话框。</li>
        <li>在“添加模块依赖关系”对话框顶部显示的过滤器文本框中，开始键入 <tt><a href="http://bits.netbeans.org/dev/javadoc/org-openide-awt/org/openide/awt/HtmlBrowser.URLDisplayer.html">URLDisplayer</a></tt>，请注意返回的模块的选择范围会逐渐缩小，直到列表中仅留有“<a href="http://bits.netbeans.org/dev/javadoc/org-openide-awt/overview-summary.html">UI 实用程序 API</a>”：
 
            <br><br>
            <img src="../images/tutorials/google/60/add-module-dependency.png"
                alt="显示“UI 实用程序 API”的“添加模块依赖关系”对话框">                 
                
            <br><br>
            单击“确定”，然后再次单击“确定”退出“项目属性”对话框。</li>
        <li>在源代码编辑器中单击鼠标右键，然后选择“修复导入”(Alt+Shift+F)。将显示“修复所有导入”对话框，其中列出了针对无法识别的类的建议路径：
            
            <br><br>
            <img src="../images/tutorials/google/60/fix-all-imports.png"
                alt="“修复所有导入”对话框 -- 针对无法识别的类提供了建议的路径">                
            
            <br><br>
            单击“确定”。IDE 将为 <tt>GooglePanel.java</tt> 创建以下 import 语句：
            
            <pre>
import java.net.URL;
import <a href="http://bits.netbeans.org/dev/javadoc/org-openide-awt/org/openide/awt/HtmlBrowser.URLDisplayer.html">org.openide.awt.HtmlBrowser.URLDisplayer</a>;
            </pre>
            
            另请注意，源代码编辑器中的所有错误将会消失。</li>
    </ol>
        
    <h3 class="tutorial"><a name="overriding"></a>实现 Presenter.Toolbar</h3>
    
    <p>由于您刚创建的 JPanel 是将显示 Google 工具栏的实际组件，因此您需要实现 <tt><a href="http://bits.netbeans.org/dev/javadoc/org-openide-util/org/openide/util/actions/Presenter.Toolbar.html">Presenter.Toolbar</a></tt> 以使该组件显示在工具栏中。在 <tt>GoogleAction.java</tt> 中，执行以下操作：</p>
        
    <ol>
        
        
        <li>打开 <tt>GoogleAction.java</tt>，将会注意到它包含以下内容：
            
<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>更改签名，以便 <tt><a href="http://bits.netbeans.org/dev/javadoc/org-openide-util/org/openide/util/actions/Presenter.Toolbar.html">Presenter.Toolbar</a></tt> 也得以实现，因为您希望在工具栏中显示该操作。

<pre class="examplecode">
package org.myorg.googletoolbar;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public final class GoogleAction implements Presenter.Toolbar, ActionListener {

    Component comp  = new GooglePanel();

    @Override
    public void actionPerformed(ActionEvent e) {
        // TODO implement action body
    }

    @Override
    public Component getToolbarPresenter() {
        return comp;
    }

}</pre>

<li>打开 <tt>layer.xml</tt> 文件中，将会看到以下内容：

<pre class="examplecode">    
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;!DOCTYPE filesystem PUBLIC &quot;-//NetBeans//DTD Filesystem 1.2//EN&quot; &quot;https://netbeans.org/dtds/filesystem-1_2.dtd&quot;&gt;
&lt;filesystem&gt;
    &lt;folder name=&quot;Actions&quot;&gt;
        &lt;folder name=&quot;File&quot;&gt;
            &lt;file name=&quot;org-myorg-googletoolbar-GoogleAction.instance&quot;&gt;
                &lt;attr name=&quot;SystemFileSystem.localizingBundle&quot; stringvalue=&quot;org.myorg.googletoolbar.Bundle&quot;/&gt;
                &lt;attr name=&quot;delegate&quot; newvalue=&quot;org.myorg.googletoolbar.GoogleAction&quot;/&gt;
                &lt;attr name=&quot;displayName&quot; bundlevalue=&quot;org.myorg.googletoolbar.Bundle#CTL_GoogleAction&quot;/&gt;
                &lt;attr name=&quot;iconBase&quot; stringvalue=&quot;org/myorg/googletoolbar/icon.png&quot;/&gt;
                &lt;attr name=&quot;instanceCreate&quot; methodvalue=&quot;org.openide.awt.Actions.alwaysEnabled&quot;/&gt;
                &lt;attr name=&quot;noIconInMenu&quot; stringvalue=&quot;false&quot;/&gt;
            &lt;/file&gt;
        &lt;/folder&gt;
    &lt;/folder&gt;
    &lt;folder name=&quot;Toolbars&quot;&gt;
        &lt;folder name=&quot;File&quot;&gt;
            &lt;file name=&quot;org-myorg-googletoolbar-GoogleAction.shadow&quot;&gt;
                &lt;attr name=&quot;originalFile&quot; stringvalue=&quot;Actions/File/org-myorg-googletoolbar-GoogleAction.instance&quot;/&gt;
                &lt;attr name=&quot;position&quot; intvalue=&quot;0&quot;/&gt;
            &lt;/file&gt;
        &lt;/folder&gt;
    &lt;/folder&gt;
&lt;/filesystem&gt;</pre>

<p><li>上面显示的内容是由“新建操作”向导创建的。删除 &quot;instanceCreate&quot; 属性，因为在本例中，您不希望创建操作类的实例。毕竟，此时您希望 JPanel 显示在该位置。
            
    </ol>
    
    <p>在此部分，已创建了一个用于显示 JTextField 和 JLabel 的 JPanel。在 JTextField 中按 Enter 键时，其内容将发送到 Google 搜索。HTML 浏览器打开，您会看到 Google 搜索结果。该操作类用于在 <tt>layer.xml</tt> 文件中注册的应用程序工具栏内集成 JPanel。
    
</div>

<!-- ======================================================================================= -->

<br>
<h2><a name="compiling"></a>编译、安装和使用模块</h2>

<p>NetBeans IDE 使用 Ant 生成脚本在 IDE 中编译和安装模块。当在上面的<a href="#creating-module-project">设置模块项目</a>一节中创建了模块项目之后，系统会自动为您创建生成脚本。现在，您可以对模块进行编译并将其添加到 IDE 中，利用 NetBeans IDE 的 Ant 支持可以执行此操作：</p>
    
<ol>
    <li>在“项目”窗口中，右键单击 &quot;<tt>GoogleToolbar</tt>&quot; 项目节点并选择“运行”。将生成模块并将其安装在 IDE 的新实例（即目标平台）中。缺省情况下，缺省目标平台是您当前所使用的 IDE 版本。目标平台打开，您可以在其中试用新模块。</li>
    <li>成功安装模块后，它会在 IDE 的“编辑”工具栏中添加一个新按钮。 
    
    <p><p><b class="notes">注意：</b>此工具栏按钮不显示图标，而是显示您在上面的<a href="#creating-panel">创建 JPanel</a> 一节中创建的 JPanel：
        
        <br><br>
        <img src="../images/tutorials/google/60/googlebar.png" border="1"
            alt="在 IDE“编辑”工具栏中嵌入的 Google 工具栏"></li>

    <li>在文本字段中键入一个搜索字符串：
    
        <br><br>
        <img src="../images/tutorials/google/60/googlebar-2.png" border="1"
            alt="显示样例搜索字符串的 Google 工具栏"></li>
            
    <li>按 Enter 键。如果在“选项”窗口中设置了 IDE 缺省浏览器，则会启动该浏览器。Google URL 和搜索字符串将被发送至浏览器，并且系统会执行搜索。返回搜索结果后，可以在浏览器中查看结果。</li>
</ol>

<br>
<h2 class="tutorial"><a name="sharing-plugin"></a>共享模块</h2>

<p>既然您已经生成了一个可增强 IDE 功能的有效模块，为什么不与其他开发者一起共享呢？NetBeans IDE 提供了一种创建二进制 NetBeans 模块文件 (.nbm) 的简便方法，这是允许他人可以在自己的 IDE 版本中试用该模块文件的通用方法（实际上，这就是您在上面的<a href="#compiling">编译、安装和使用模块</a>中所执行的操作）。
    
    <p>要创建模块二进制文件，请执行以下操作：</p>
    
在“项目”窗口中，右键单击 &quot;GoogleToolbar&quot;<tt></tt> 项目节点，然后选择“创建 NBM”。将创建新的 NBM 文件，您可以在“文件”窗口 (Ctrl+2) 中查看它：
        
        <br><br>
        <img src="../images/tutorials/google/60/create-nbm.png" border="1" alt="在“文件”窗口中显示的新 NBM 文件">


<br>
<div class="feedback-box"><a name="feedback"></a> <a href="https://netbeans.org/about/contact_form.html?to=3&amp;subject=Feedback:%20Google%20Toolbar%20Module%20Tutorial">请将您的意见和建议发送给我们</a></div>
   <br style="clear:both;" />
    <!-- ======================================================================================== -->
    
    <h2><a name="nextsteps"></a>另请参见</h2>
    
    <p>“NetBeans 插件快速入门”教程到此结束。本文档介绍了如何创建用于在 IDE 中添加 Google 搜索工具栏的插件。有关创建和开发插件的详细信息，请参见以下资源： 
    <ul>
        <li><a href="https://netbeans.org/kb/trails/platform_zh_CN.html">NetBeans 平台学习资源</a></li>
        <li><a href="http://bits.netbeans.org/dev/javadoc/">NetBeans API Javadoc</a></li>
        <li>本教程中使用的 NetBeans API 类：
        <ul>
            <li><tt><a href="http://bits.netbeans.org/dev/javadoc/org-openide-awt/org/openide/awt/HtmlBrowser.URLDisplayer.html">HtmlBrowser.URLDisplayer</a></tt>
            <li><tt><a href="http://bits.netbeans.org/dev/javadoc/org-openide-util/org/openide/util/actions/Presenter.Toolbar.html">Presenter.Toolbar</a></tt>
        </ul>
        </li>
    </ul>
    
    <hr>
    <!-- ======================================================================================== -->
    
    
</body>
</html>
