【发布时间】:2010-05-14 14:19:19
【问题描述】:
我有一个用 Java 编写的 Windows Mobile 应用程序,它使用 AWT 作为用户界面。我正在考虑将 UI 移植到 SWT。我获得了适用于 windows mobile 的 SWT 库,并开始研究在实际移植它时将涉及哪些工作。我认为我必须决定的第一件事是如何处理应用程序中的大量屏幕。
在 AWT 中,UI 基本上是一个带有 CardLayout 的 java.awt.Frame。然后每个屏幕只是 java.awt.Panel 的扩展,并被添加到框架中。然后,每当我们需要切换到不同的屏幕时,我们只需将该面板设置为最顶部即可。
SWT 没有这样的布局管理器(我什至不确定这是否是最好/最有效的方式,因为与应用程序中的每个屏幕相关联的系统资源总是被占用)。我想到的一种方法是每个屏幕都有自己的 org.eclipse.swt.widgets.Shell。从一个屏幕切换到另一个屏幕将涉及一个显示管理器类创建新屏幕(外壳)并处理旧屏幕(不确定每次显示屏幕时创建外壳和所有小部件的性能影响?) .我不确定在一个移动应用程序中使用多个 shell 是否是个好主意??
有人对使用 SWT 在移动应用程序中处理多个屏幕的最佳方式有任何建议吗?是否有与我们目前在 AWT 中使用的方法等效的方法,即 CardLayout?还是我认为这并不是最好的方法,因为每个屏幕都会使用资源,即使它们没有被显示?
【问题讨论】:
标签: java user-interface windows-mobile java-me swt