`
wsc830719
  • 浏览: 163597 次
  • 性别: Icon_minigender_1
  • 来自: 唐山
社区版块
存档分类
最新评论

netbeans(5):使用swing验证框架

阅读更多

最近不知道吃错了什么药,发了很多netbeans的文章,netbeans真的不错。第4篇提到了netbeans的swing验证框架。它将在下个版本也就是6.9会集成进入netbeans。现在swing验证框架早已可以使用。目前版本是0.4版本,地址是http://kenai.com/projects/simplevalidation/downloads 

 

它是专为netbeans平台开发的,因此,netbeans极有可能向平台方向发展,帮助人们更好的开发swing应用。

当然netbeans的类库都是swing的,因此可以拿来普通使用。之所以用平台,它可以提供很多额外的好处。

下面转下官网的一个示例:

该示例就是使用普通的swing项目(我建立的)来演示,其中就使用了netbeans平台API:

1 新建项目,选择Java类别下的Java应用程序,选择生成主类,取名为Main.java。

2 拷贝如下代码:

package basicdemo;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import org.netbeans.validation.api.builtin.Validators;
import org.netbeans.validation.api.ui.ValidationGroup;
import org.netbeans.validation.api.ui.ValidationPanel;
public class Main {
  public static void main(String[] args) {
    //This is our actual UI
    JPanel inner = new JPanel();
    JLabel lbl = new JLabel("Enter a URL");
    JTextField f = new JTextField();
    f.setColumns(40);

    //Setting the component name is important - it is used in
    //error messages
    f.setName("URL");

    inner.add(lbl);
    inner.add(f);

    //Create a ValidationPanel - this is a panel that will show
    //any problem with the input at the bottom with an icon
    ValidationPanel panel = new ValidationPanel();
    panel.setInnerComponent(inner);
    ValidationGroup group = panel.getValidationGroup();

    //This is all we do to validate the URL:
    group.add(f, Validators.REQUIRE_NON_EMPTY_STRING,
            Validators.NO_WHITESPACE,
            Validators.URL_MUST_BE_VALID);

    //Convenience method to show a simple dialog
    if (panel.showOkCancelDialog("URL")) {
      System.out.println("User clicked OK.  URL is " + f.getText());
      System.exit(0);
    } else {
      System.err.println("User clicked cancel.");
      System.exit(1);
    }
  }
}

 

3 添加依赖类库,因为需要NBundle实现资源国际化,因此需要nbutil库。

在库上点击右键,添加jar,导航到netbeans安装目录——platform11(6.8版的是11,早期版本比这个数字小),找到——lib目录——添加org-openide-util.jar

4 运行主类:

运行后,发现,验证框架将创建按钮并控制按钮是否可以使用。也就是说,开发人员将只需关注业务部分就行了。这和netbeans的一些组件思想类似,比如向导组件,也是提供上一步 下一步等按钮,还有最基本的面板,只需扩展需要的就可以了,其他都是重用的。

当输入不合法时,按钮会禁用,只有合法后才能启用。

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics