如何在Eclipse RAP中实现重复设计



Eclipse RAP(远程应用程序平台)项目提供了一种使用SWT编写web应用程序的方法。由于来源单一,编写的代码也可以用于桌面SWT/RCP应用程序。

由于它是一个用于web应用程序的框架,我想知道它是否支持响应式设计
如果是这样的话,一个简单的例子就太好了。它不需要与RCP兼容。

我在互联网上找不到太多,有没有努力支持响应式设计?

由于RAP保护您不受web技术的影响,本机CSS和其他web技术将不起作用。

为了总结注释,您可能需要实现一个或多个自定义布局,以适应可用空间,并相应地显示/隐藏/调整托管控件的大小。

您可能还希望使用自定义控件或操作现有控件以适应可用空间。在某些地方。例如,当空间不足时,隐藏工具栏按钮上的文本。

RAP主题化也可以在一定程度上加以利用,以更改某些控件的外观和空间。

进一步阅读:

  • 2014年的EclipseCon演讲:https://www.eclipsecon.org/na2014/sites/default/files/slides/Responsive%20Applications%20Tutorial%20-%20EclipseCon%202014.pdf

  • 一篇博客文章,其中包含有关SWT响应UI的代码示例:http://www.codeaffine.com/2014/02/24/responsive-uis-with-eclipse-and-swt/

  • RAP主题:https://eclipse.org/rap/developers-guide/devguide.php?topic=theming.html

  • 了解SWT布局:https://www.eclipse.org/articles/article.php?file=Article-理解Layouts/index.html(忽略弃用警告,自那以后核心概念没有改变)

您可以使用Tabris创建的Passe Partout使其响应。这适用于RAP,并且应与RCP兼容。

他们制作了一个自定义布局:FluidGridLayout。

最好通过工厂类com.eclipsesource.tabris.passepartout.passepartout.使用它

来源可以在github上找到:https://github.com/eclipsesource/tabris/tree/master/com.eclipsesource.tabris.passepartout

将此插件添加到您的依赖项中,或者只复制项目中的源代码。

有关基本信息,请参阅eclipsesource上的博客文章:https://eclipsesource.com/products/tabris/eclipse-rap-documentation/responsive-design/

它的伟大之处在于,您可以用java对其进行编程。

我现在遇到的唯一问题是滚动。在我的例子中,我有一个工作台,我的编辑器部分需要一个滚动复合,只设置为V_SCROLL。我添加了两个调整大小的监听器来设置scrolledcomposite的新minsize。

  • 当整个浏览器调整大小时,显示器上有一个调整大小的侦听器
  • 当只有编辑器部分调整大小时,父级的第二个调整大小侦听器。(fe当视图被调整大小或编辑器部分被最大化时)

最新更新