如何快速上手Netbeans的GUI Form Designer

来源:互联网 发布:克隆网站软件 编辑:程序博客网 时间:2024/04/30 04:35

Netbeans FormDesigner的确非常的强大。我现在的一个Swing项目采取的开发方法是,使用netbeans的form designer设计界面。当然设计出来的界面只包含组件的定义。也就相当于MVC的View,所有控制类放到一个Controller里面。

要快速上手Form Desinger的方法就是要学会看懂它的.form文件。这个文件是xml格式的,因此非常容易懂。

一般的格式都是这样的,先定义布局。例如GridLayout ,2行1列

<Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridLayout">
    <Property name="columns" type="int" value="1"/>
    <Property name="horizontalGap" type="int" value="5"/>
    <Property name="rows" type="int" value="2"/>
    <Property name="verticalGap" type="int" value="5"/>
  </Layout>

包含两个用于布局的panel
  <SubComponents>
    <Container class="javax.swing.JPanel" name="aliasPnl">

      <Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridLayout">
        <Property name="columns" type="int" value="2"/>
        <Property name="rows" type="int" value="1"/>
      </Layout>
      <SubComponents>

存放一个登陆用的下拉框
        <Component class="javax.swing.JLabel" name="loginAliasesLbl">
          <Properties>
            <Property name="horizontalAlignment" type="int" value="0"/>
            <Property name="text" type="java.lang.String" value="Choose Alias"/>
          </Properties>
        </Component>
        <Component class="javax.swing.JComboBox" name="loginAliasesCbo">
        </Component>
      </SubComponents>
    </Container>
    <Container class="javax.swing.JPanel" name="buttonPnl">

      <Layout class="org.netbeans.modules.form.compat2.layouts.DesignGridLayout">
        <Property name="columns" type="int" value="3"/>
        <Property name="horizontalGap" type="int" value="5"/>
        <Property name="rows" type="int" value="1"/>
        <Property name="verticalGap" type="int" value="5"/>
      </Layout>

三个按钮并排放
      <SubComponents>
        <Component class="javax.swing.JButton" name="manageBtn">
          <Properties>
            <Property name="mnemonic" type="int" value="109"/>
            <Property name="text" type="java.lang.String" value="Manage a/cs"/>
          </Properties>
        </Component>
        <Component class="javax.swing.JButton" name="loginBtn">
          <Properties>
            <Property name="mnemonic" type="int" value="108"/>
            <Property name="text" type="java.lang.String" value="Login"/>
          </Properties>
        </Component>
        <Component class="javax.swing.JButton" name="cancelBtn">
          <Properties>
            <Property name="mnemonic" type="int" value="99"/>
            <Property name="text" type="java.lang.String" value="Cancel"/>
          </Properties>
        </Component>
      </SubComponents>
    </Container>
  </SubComponents>

把这个文件摸透以后,在来使用GUI就直观多了,按照左下角的导航栏来设计模块的包含非常的简单。

这个世界上的GUI IDE有两种逻辑,一种是把事情做好。不管花什么代价。另一种是代价要最小,不管东西好不好,能用就行。

Swing是前者。VB是后者