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

netbeans text-to-speech(文本至语音)工具被一所大学贡献,顺便推荐下netbeans平台

阅读更多

http://netbeans.dzone.com/new-nb-accessibility-support

 

这是原文,可以为netbeans提供文本到语音的转换,是一所大学贡献的。      

 

按照某些网上的分析,如果oracle想让Java涉足上网本,另外将手机开发与桌面开发统一,从而造就统一的API。那么eclipse一家独大是占不住脚的。

        首先,eclipse是SWT的,swing是Java的标准,手机部分也是基于标准的,如果要统一桌面与手机的话,就看是使用swt还是swing了,如果swing永远是Java的标准的话,并且只有这样才可以完整跨平台的话,那么重点就应该在swing上。反过来那就是去重视swt,把swing做较大的改动或直接换成swt,但是我想这有点不靠谱。

        因此,swing才是重点。

        看了C#的语法介绍一书,看到IO的那块,作者颇有得意的神采,说其API非常方便,比如 moveto之类的。

的确,看看Java API,文件操作相当冗余、繁杂。其实我想你应该去看看netbeans的API,它简直就是把swing神话了。moveto算什么。 netbeans API只需调用标准的action就能完成文件的移动 复制(包括右键菜单 以及拖拽方式的),当然这需要把应用构建在netbeans平台上,或者至少使用netbeans API来构建应用。如果用netbeans做个目录浏览器的话,包括一般的操作行为,那么仅仅需要10几行代码,我指的是你需要往里写的。如下:我写过的代码收集插件的代码,稍微改了点:

File f = new File("F:/codecollect");
        FileObject fo = null;
        try {
            fo = FileUtil.createFolder(f);
        } catch (IOException ex) {
            Exceptions.printStackTrace(ex);
        }
        DataFolder fd = DataFolder.findFolder(fo);
        explorerManager.setRootContext(fd.getNodeDelegate());
        ActionMap map = getActionMap();
        map.put(DefaultEditorKit.copyAction, ExplorerUtils.actionCopy(explorerManager));
        map.put(DefaultEditorKit.cutAction, ExplorerUtils.actionCut(explorerManager));
        map.put(DefaultEditorKit.pasteAction, ExplorerUtils.actionPaste(explorerManager));
        map.put("delete", ExplorerUtils.actionDelete(explorerManager, true));
        associateLookup(ExplorerUtils.createLookup(explorerManager, map));

这就是一个文件目录浏览器了,包括 复制 粘贴 删除  无论是右键菜单 还是拖拽方式的都支持了,还能以默认文本编辑器打开并进行编辑。

 1 首先,创建一个文件,当然它是目录了。

2 借助netbeans 文件系统API创建目录并转换成一个netbeans的文件对象

3 获取他的数据对象表现形式

4 获取它的节点表现形式

5 传给曝光管理器去呈现视图

6 完成

然后你就能看见这个目录了,你可以创建文件/文件夹,相互复制 粘贴 删除等,或拖拽他们,或编辑他们。

          如果你不喜欢包办,或者想实现自己的细致控制,比如我显示哪些文件,哪些文件或哪类文件应该有什么动作,那么你应该使用 代理节点,来代理原始节点,并给予你需要的过滤。就这么简单。

        当然或许你不要包办的,那么你要自己实现节点,然后借助文件系统和数据系统API,来加以操作。文件系统API,非常方便,包括目录的移动,等等你能想到的操作基本上都有个方法帮你完成,不用你递归。

         我很纳闷,sun为何不把它的netbeans也一同给标准化了,直接作为swing的扩展,那不是更好吗。

。。。。。。。

。。。。。。。。。

。。。。。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics