java - 使用另一个 Eclipse 项目中的 CN1 项目?

标签 java codenameone

在Eclipse中,我创建了一个CN1项目和一个普通Java项目,该项目依赖于前者。后者包含一些实用程序(例如,源代码生成)和一些 JUnit 测试。我使用以下简单的技巧:

    CodenameOneImplementation impl = new JavaSEPort();
    Util.setImplementation(impl);
    Display.init(impl);

它可以工作,但会显示一个全屏窗口,并且当 main 完成时程序不会终止。我知道,这是 GUI 应用程序的正常行为,但我不需要任何 GUI,因为我只初始化了 Display,以便 Display#getResource 工作。

  • 如何去掉窗口(或至少使其变小)?
  • 如何在不必调用 System.exit 的情况下终止程序(即,将事件处理线程作为守护进程运行)?
  • 还有更多需要设置吗?

最佳答案

使用这样的东西:

JavaSEPort.setDefaultInitTarget(new JPanel());

这会将显示的 UI 绘制到空白的 JPanel 中。

关于退出应用程序,您需要使用System.exit(0),因为 EDT 循环和 native GUI 循环正在运行。您可以停止 EDT,但这可能不适用于桌面端口,因此仅使用退出是简单且常见的做法。

关于java - 使用另一个 Eclipse 项目中的 CN1 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53404222/

相关文章:

java - 如何使用Jsoup从html数据中获取图片来源和描述

java - 如何将值插入到xml中?

codenameone - AnimateLayout 与 AnimateHierarchy

java - 如何在对话框中自动换行

codenameone - 将使用 Android SDK 开发的应用程序移植到 codenameone

java - 自定义泛型解释

java - 如何在Eclipse中安装Jcalender?

java - 如何使用 Java NIO 从嵌套的 zip 文件中读取文件

codenameone - 导致android构建失败的警告

java - 如何从 URL Codenameone 创建图像