swing_designer:添加高级容器组件的支持
最近一直比较忙,不仅仅是工作上,私人事情也很多,所以swing_designer一直处于缓慢进展中,一直也没有抽出时间来写文章,只把现有的成果继续完善。其中最重要的几个进展是:
1.完成所有常见组件的基本属性编辑功能。这些属性中包括组件一些复杂属性如model的编辑。
2.添加复杂容器组件JLayeredPane、JDesktopPane、JInternalFrame。到目前为止,Matisse的组件面板上的swing container和swing components已经基本涵盖。
3.一些小的改动,比如对于JTree、JTable、JTextArea、JTextPane、JEditorPane等组件的添加自动添加JScrollPane等。
目前项目的规模达到了346个类,142资源文件。有些难以控制了,需要时间重新梳理梳理一下。下一阶段的计划除了树立项目,主要开发集中在事件编辑这一块。
现在越来越觉得要控制项目的规模。本来该项目是要做成教程性质的,现在规模没有控制好,做成了具有一定实用性质的工具了,反而把文章给丢了。而现在精力有限,如果想给大家讲讲这些思想的话,就必须限制一下规模。因此打算今后做如下功能限定:
1.不打算支持菜单编辑。该部分比较独立,可以单独做一个项目来完成。
2.不打算支持除JPanel外的其他窗口组件类型。其他顶层窗口容器的思想和JPanel相似,但代码要做相当的改动。
3.不支持AWT组件。
4.不支持非可见组件,比如ButtonGroup等,需要手工编码补齐。
下面是近期所作修改的一些截图:

Overall View

Desktop Pane with 2 Internal Frames

3 Newly Added Components

More Properties Added

谢谢,很实用
发表于 SKY 在 2007年09月05日, 09:04 上午 CST #
对你的工作很感兴趣,是学习的好材料。但我下载了最新的版本后,在NetBeans 5.5.1下打开工程,却被告知“Reference Problems”,Clean Project后也不行,导入dist\lib目录下的jar也不行,请麻烦告知解决方案,我的JDK是1.5.0_12。谢谢
发表于 Jeffery 在 2007年09月05日, 10:44 上午 CST #
终于build成功了,但运行的时候报错,控制台输入如下:
init:
deps-jar:
compile:
run:
java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
Exception in thread "main"
Java Result: 1
BUILD SUCCESSFUL (total time: 1 second)
请问是什么原因呢?能否告知开发环境及平台?谢谢
发表于 Jeffery 在 2007年09月05日, 11:44 上午 CST #
Jeffery,
这不是我的工作,这只是我平时自己学习做的项目。
这个工程需要jdk6的版本,里面的编译过的类是需要在java 6上运行的,因此你需要下载并安装jdk6,使用6就不会再有引用错误。
我用的平台是:
netbeans 6.0
jdk 6
发表于 william chen 在 2007年09月05日, 11:50 上午 CST #
我觉得使用netbeans 5.5.1应该就可以,但是jdk一定要使用1.6的版本。因为这儿使用的GroupLayout是只有6中才有的。而且类的版本也已经编译成jvm 6上了,所以才会出现类版本不一致错误。
发表于 William Chen 在 2007年09月05日, 11:52 上午 CST #
谢谢指点:-)
发表于 Jeffery 在 2007年09月06日, 10:04 下午 CST #
一直关注您的文章很久了,也向你学了不少的东西,不知道java的桌面应用会流行吗?
发表于 221.5.163.195 在 2007年09月11日, 04:27 下午 CST #
363
发表于 210.22.83.226 在 2009年10月10日, 05:57 下午 CST #