一篇经典的 介绍netbeans中swing 应用程序框架的文章(2)
时间:2014-04-20 00:44 来源:www.ymxhw.com 作者:幽默笑话网 点击:次
提示:我们如果创建基于Swing的数据库程序,那么选择BataBase Application将提供极大的便利。但是在这里我只是介绍Basic Application,也就是现在我们用SAF开发普通的桌面程序。 生成的项目目录结构 l META-INF/services目录 该目录一般存在一个JAR包里面 META-INF/services目录涉及一个模式:服务提供者模式 引入该模式一般是为了程序松散耦合,而且是IoC(控制反转)的另一种实现方式 服务提供者模式一般有两个角色 ² 服务 :一般为一个抽象类 ² 服务提供者 :抽象类的实现 存在META-INF/services目录的JAR包一般为一个“服务提供者” 用NetBeans开发中小型程序不需要服务提供者概念,如果你要深入理解 可以Baidu或Google一下META-INF/services l foo包 我们来看看NetBeans为我们生成了什么基础框架类: 1、FooApp.java
} FooApp.java里面的代码是NetBean为我们生成的,开发简单的程序这里基本上不需要更改什么。
每个程序都应该有一个关于界面,Netbeans为我们生成了关于的模板 修改相应文字就可以了,当然也可以自己做个About界面
FooView.java是程序View部分的关键,由于生成的代码比较多 在解释代码之前,我先看看Design部分
NetBenas给我们生成的框架非常简单明了 需要注意的是图上标识的两个地方 标有1的地区为消息地区,我们的程序完成任务后,在这里提示消息 接下来我们看看FooView.java的构造器的代码:
一大段代码,看起来是不是眼花缭乱啊,其实这么一大断代码是IDE给我们生成的用来初始发刚才所示的两个区域的消息区和进度条区域的。 也就是初始化消息区域和进度条区域,如果不想自定义消息现实和任务进度条的实现方式,上面一大段代码大可不必理会。 我们再来看一段代码:
FooApp.getApplication().show(aboutBox); } 看到方法名我们就知道,这个是用来实现关于界面的 我们运行一下程序,在点击菜单栏里面的 Help > About..
结果,关于界面跳了出来。 看到这里你也许会惊讶,因为按照传统的方法,相应的菜单应该有相应的ActionListener事情监听器才能发生事件啊! 别着急,你看showAboutBox()方法前不是有一个注解: @Action 这个注解涉及到SAF对动作的定义,我们后面将详细讲解 l foo.resources、foo.resources.busyicons包 foo.resources、foo.resources.busyicons包是用来存放程序的图像、文字等资源的地方 后面讲到程序的国际化的时候再作介绍。
忘掉ActionListener事件监听器,拥抱@Action 原来是SAF框架对有@Action注释的方法进行了管理。 (责任编辑:幽默笑话网) |