当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: Buoy 是一个构建在 Swing 之上的免费用户界面(UI)工具包,它为 UI 开发人员提供了方便性和简单性。
 

 

    摘要:原载: 在<设想使用xml和关系数据库形成一个对象数据库>一文中,已经阐述了关系数据库和对象数据库的主要区别:对外键的使用是通过直接记录,还是遍历外键子表来获得。而这里,是面对另一个重要的区别:如何释放对象的资源。对于对象数据库而言,它等同于是一批直接存于数据库中的串行化对象,它的实际存储形式到底是不是按关系结构存储并不是最重要的,重要的是调用程序读入内存的就是一个对象,而不是游标映射......
 ·24点算法的java代码     »显示摘要«
    摘要:/*我编的小程序,逻辑有点混乱,注释也少得可怜,但应该能列出任何能用四则运算得出24的四个1~10的数的等于24的等式。大家若有空,请指点。*/public class test24point{ public static void main(string[] args){ int index = 0 ; int temp = 0 ; int totalsuc = 0 ; int numb[] =......


轻松实现Java 用户界面编程
  buoy 是一个构建在 swing 之上的免费用户界面(ui)工具包,它为 ui 开发人员提供了方便性与简单性.在本文中作者用一个简单的 fractal 用户界面程序,介绍了 buoy 可以做什么.为什么这么做.  第一次尝试用 java 语言构建简单的用户界面时,我对 swing 接口的复杂性感到有些惊讶.老实说,有点想打退堂鼓.最近,一个朋友向我提到,他使用的渲染程序 art of illusion(请参阅 参考资料)基于一个不同的工具包:buoy.推荐它的原因之一是它的界面更友好.当他第一次提到它时,我以为他在谈 "bui",而它与 gui 这个名字的相似是故意的.在这里 b 代表 better(更好),但是名字 buoy 并不是缩写.   buoy 是免费的.实际上,它是公共的东西.它并没有在某个开放程度合理的许可下发布,实际上它根本不受任何许可控制.这意味着在任何用 java 语言编写的能够运行 buoy 的项目中都可以使用 buoy,而不用考虑许可问题.因为提供了完整的源代码,所以这个工具包很容易修改与扩展.本文基于 buoy 1.3 发行版,要求读者对 swing 有基本的了解,虽然不了解也能对付过去.   示例程序  我曾经尝试用 swing 构建的第一个应用程序最后以失败告终.为了看出工具包之间的对比情况,我决定使用 buoy 来构建这同一个程序.文章中的代码示例全部来自该程序的 buoy 版本.程序生成了一些分形,具体地说,是迭代的分形.基本思想很简单:在平面上定义一系列的线条区段,从(0,0) 到(1,0),围绕任意一个单位线条定位.绘制这些区段之后,绘制同一套变形线条,用这个区段作为单位向量.做起来比说的更容易,就像在图 1 中看到的. 图 1. 分形编辑器中的分形  这个程序的界面相当简单.它有一些界面小部件,有一个画布,在画布上绘制漂亮的图片,还支持用鼠标操纵图片.实际上,必须要做的全部工作就是操纵构成原始曲线的点,原始曲线会迭代地绘制出来.界面还有一个最小化的菜单;它可以打开与关闭文件,关闭窗口,或者把当前图像保存为 png 格式的文件.虽然简单,但是这个界面简要地提供了一个 buoy 小部件的合理示例,还有相当数量对事件处理系统的体验.  程序实际的核心代码 —— 分形生成器 —— 已经写好了,这把这个示例变成一个很好的测试程序.当然,在更新它的过程中,我也发现并且修补了一些 bug.   发行包中包含示例程序的源代码,还有编译好的类文件与 buoy 的 jar 文件(单击本文顶部或底部的 code 图标,下载 factal.tar).包中还包含一个叫做 frac 的目录,里面包含一些示例分形.如果使用一台 unix 风格的机器,在路径中有 java 编译器,那么只要运行 make 就能运行它.否则,需要设置 classpath 包含当前路径与 buoy 的 jar 文件所在的目录,然后运行 fractalviewer 类.在 windows 系统上,正确的命令行应当是 java -classpath .;buoy.jar fractalviewer.  sed -e s/j/b/g  在第一次深入研究代码时,也许会形成这样的印象:把 swing 代码转换成 buoy 代码简单得就像把 ui 元素名称中的字母 j 换成 b 一样简单.例如, fractalviewer 类不再扩展 jframe;它现在扩展的是 bframe.主要的小部件名称也可以照此推测得到.spinner 与 slider 像以前一样有相同的名字,只是换了一个字母. menubar(菜单条) 仍然由 menus(菜单)构成,菜单则容纳 menuitems.  有些命名转换略有不同.在 swing 引用 borderlayout 的地方,buoy 有 bordercontainer.一般来说,buoy 的命名转换相当统一,虽然不总是与 swing 的命名一样.一个明显的区别是 buoy 几乎组合了容器与布局管理器的概念;每种容器类型都知道自己如何布局.这大大简化了设计.例如,在分形生成器中使用的 labelwidget 类是一个 bordercontainer;在 swing 中,这可能是一个带有 borderlayout 布局管理器的 jpanel.  但是,两者还是有许多相似之处.
...   下一页
    摘要: jpivot 是mondrian的表现层taglib,一直保持着良好的开发进度。 已经好久没有用了,趁彻底忘记以前,把小小的心得记下来。 1.汉化 1.1 查找所有resources.properties文件,汉化为resources_zh.properties文件 1.2 native2ascii resources_zh.properties resources_zh.properties ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE