`
dyllove98
  • 浏览: 1404928 次
  • 性别: Icon_minigender_1
  • 来自: 济南
博客专栏
73a48ce3-d397-3b94-9f5d-49eb2ab017ab
Eclipse Rcp/R...
浏览量:39034
4322ac12-0ba9-3ac3-a3cf-b2f587fdfd3f
项目管理checkList...
浏览量:80004
4fb6ad91-52a6-307a-9e4f-816b4a7ce416
哲理故事与管理之道
浏览量:133115
社区版块
存档分类
最新评论

Eclipse rcp/rap 开发经验总结(10) -Rap不同系统间的差异和处理方式

阅读更多

 

平常进行 rap 程序开发一般都是在 win 下面完成 , 然后在 tomcat 下面测试 , 但是程序最终发布一般都是在 linux  aix 上面 , 这个时候就有能会出现一下问题,下面 2 个问题是我们把在开发中真是出现的问题,与大家一起分享下 ;

1、   图片路径

这个是最常用的方法,就是在 rap 中加载图片进行显示,刚开始我们使用的是如下代码

 

public static String getRoot() {
        String path = null ;
        try {
     path = FileLocator.toFileURL (Platform.getBundle (Activator. PLUGIN_ID ).getEntry( "" )).getPath();
     path = path.substring(path.indexOf( "/" ) + 1, path.length());
        }
        catch (Exception e) {
           log .error( "getRoot method :" , e);
        }
        return path;
    }

 

来获得系统的跟路径 . 但是当程序在移植到 linux aix 上面的时候发现图片路径全部失效 . 可以使用如下方式进行寻址来获得图片。

/**
     * 获取图片
     * @param fileName
     *            图片的名称
     * @return 先从缓存对象中查找,若有直接返回,若没有,则将图片加载到缓存中,在从缓存中将图片传给调用着
     */

    public static Image getImage(String fileName) {
        Bundle bundle = Platform.getBundle ( "TelecomUI" );
        URL url = bundle.getEntry( "icons" );
        try {
            url = Platform.asLocalURL (url) ;
        }
        catch (Exception e) {
        }
        Image image = registry .get(fileName);
        if ( null != image) {
            return image;
        }
        else {
            URL fullPathString = bundle.getEntry( "icons/" + fileName);
            ImageDescriptor des = ImageDescriptor.createFromURL (fullPathString);
            registry .put(fileName, des);
            return ImageDescriptor.createFromURL (fullPathString).createImage();
        }
    } 

 

 

 

2、   获得屏幕的分辨率

因为需要把一些弹出的组件居中显示 , 这个时候就需要获得系统的分辨率

刚开始我们使用的方法如下;

screenH = Toolkit.getDefaultToolkit().getScreenSize ().height;
        screenW = Toolkit.getDefaultToolkit().getScreenSize ().width; 

 

 

上面这段代码在 window 下面是没有问题的 , 可是到了 linux aix 下面就报错了 , 找不到

sun.awt.X11.XToolkit

 

可以采用如下方式来获得屏幕的分辨率     

DisPlay.getDefault().getClientArea();

 

 

3、   其他如果有发现不兼容会陆续补充

2
0
分享到:
评论

相关推荐

    eclipse-rcp-2022-06-R-linux-gtk-x86_64.tar.gz

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-linux-gtk-x86_64.tar.gz) 适用于Linux x86_64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-rcp-2022-06-R-win32-x86_64.zip

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-win32-x86_64.zip) 适用于Windows x86_64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-rcp-2022-06-R-macosx-cocoa-x86_64.dmg

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-macosx-cocoa-x86_64.dmg) 适用于macOS x86_64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-rcp-2022-06-R-linux-gtk-aarch64.tar.gz

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-linux-gtk-aarch64.tar.gz) 适用于Linux aarch64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-rcp-2022-06-R-macosx-cocoa-aarch64.dmg

    Eclipse IDE for RCP and RAP Developers(eclipse-rcp-2022-06-R-macosx-cocoa-aarch64.dmg) 适用于macOS aarch64: A complete set of tools for developers who want to create Eclipse plug-ins, Rich Client ...

    eclipse-jee-2018-09-win32-x86_64.zip

    8. **RCP和RAP框架**:Eclipse Rich Client Platform (RCP) 和 Rich Ajax Platform (RAP)允许开发人员构建自己的桌面应用程序和Web应用,2018-09版本可能包含相关更新和改进。 9. **持续集成**:Eclipse与Jenkins、...

    eclipse-rcp-2022-06-R-linux-gtk-x86_64.tar

    该压缩包 "eclipse-rcp-2022-06-R-linux-x86_64" 中包含的主要文件是 "eclipse-rcp-2022-06-R-linux-x86_64",这可能是一个可执行的Eclipse IDE实例,用于在Linux系统上支持RCP和RAP的开发。为了运行这个IDE,你需要...

    通过例子学习EclipseRCP开发

    1. 安装Eclipse IDE:首先,你需要下载并安装Eclipse IDE for RCP and RAP Developers版本,这个版本包含了开发RCP应用所需的所有工具。 2. 创建新项目:在Eclipse中,选择“File” -> “New” -> “Project”,然后...

    eclipse 2020-06 国际化资源包

    Eclipse IDE for RCP and RAP Developers (includes Incubating components) Version: 2020-06 (4.16.0) Build id: 20200615-1200

    菜鸟EclipseRCP学习之路

    1. 安装Eclipse IDE for RCP and RAP Developers版本,这是一个专门为RCP开发定制的集成开发环境。 2. 创建一个新的Eclipse RCP项目,选择适当的模板,如“Basic”或“Feature-Based”。 3. 配置项目的运行时环境,...

    Eclipse RCP开发SDK_3.6.2.rar

    10. **SWT和JFace**:Eclipse RCP使用SWT(Standard Widget Toolkit)作为底层的GUI库,提供了高效的性能和操作系统级别的集成。JFace则是一层抽象,简化了UI组件的使用,提供了数据绑定和视图的高级支持。 在SDK_...

    Eclipse RCP 初级入门教程

    要开始RCP开发,首先需要安装Eclipse IDE,然后安装Eclipse RCP和RAP开发工具(PDE)。这些工具提供了一整套用于创建、调试和部署RCP应用的工具集。 **4. 创建第一个RCP应用** 在Eclipse中,通过“新建 -> 项目 -> ...

    Eclipse RAP Deploy - 针对Eclipse 3.5 + Tomcat

    这通常包括安装Eclipse RAP插件,如RCP和RAP Developer Tools。这些插件提供了项目模板、构建配置和调试工具,帮助我们更轻松地构建和测试RAP应用。 接下来,我们要准备Tomcat服务器。Tomcat是一个流行的开源...

    Instant Eclipse 4 RCP Development How-to.pdf

    《即时Eclipse 4 RCP开发指南》这本书详细介绍了如何使用Eclipse 4来创建富客户端应用程序(Rich Client Platform,简称RCP),它是一本实践操作指南,包含了超过10个实用的配方。Eclipse 4 RCP是Eclipse平台中用于...

    eclipse rap教程

    RAP利用了Eclipse插件系统的优势,使得桌面应用开发的经验可以无缝转移到Web开发中。这个教程将带你深入了解Eclipse RAP的基础知识和高级特性。 1. **RAP基础概念** - **RAP架构**:RAP基于请求-响应模型,服务器...

    eclipse-rcp-galileo-SR2-win32.zip

    Eclipse For RCP and RAP Developers开发包主要针对开发Eclipse插件,Eclipse RCP(富客户端应用程序),RAP(富客户端ajax应用程序)的程序员,还包含CVS、Mylyn和xml编辑器,EGit分布式版本控制等插件。...

    RCP工程转成RAP,并在浏览器中运行

    RCP和RAP都是Eclipse基金会开发的框架,前者用于构建桌面应用程序,后者则用于构建Web应用程序。 1. **RCP与RAP的区别** RCP和RAP在结构上非常相似,主要区别在于运行环境和用户交互方式。RCP是桌面应用框架,依赖...

    RCP+Plug-in开发自学教程_RCP+Plug-in开发自学教程_源码

    1. **环境搭建**:安装Eclipse IDE for RCP and RAP Developers,获取必要的RCP开发工具集。 2. **创建新项目**:通过New -> Project -> Plug-in Project,创建一个新的Plug-in项目。 3. **编写代码**:在项目的src...

    EclipseRCP:第一个 Eclipse RCP - Java 测试

    要开始开发 Eclipse RCP 应用,首先需要安装 Eclipse IDE for RCP and RAP Developers。这个版本的 Eclipse 集成了所有必要的工具和插件,如 PDE(Plug-in Development Environment)用于 RCP 开发。此外,确保已...

    Eclipse RCP入门

    Eclipse Rich Client Platform (RCP) 是一个强大的框架,用于...通过深入学习Eclipse RCP,开发者可以构建出具有专业级用户体验的桌面应用程序,同时利用Eclipse的丰富生态系统,集成第三方工具和服务,提升开发效率。

Global site tag (gtag.js) - Google Analytics