Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 类似于GenericDialog/ADM的东西_Java_User Interface_Imagej - Fatal编程技术网

Java 类似于GenericDialog/ADM的东西

Java 类似于GenericDialog/ADM的东西,java,user-interface,imagej,Java,User Interface,Imagej,我正在寻找类似于ImageJ或Adobe Dialog Manager中使用的GenericDialog的东西。目标是创建一个对话框的模板(字段数、类型等-需要的信息,而不是如何显示),并将其发送到view类。此视图可以是基于Swing的GUI或简单控制台UI。用户填写对话框模板源的字段和值。 是否有一些Java库实现了这一点? 我知道有GenericDialog,但我不确定是否可以在我的项目中使用它(因为它是ImageJ的一部分)。更重要的是,我觉得这对我来说是“沉重的”。ImageJ中的Ge

我正在寻找类似于ImageJ或Adobe Dialog Manager中使用的GenericDialog的东西。目标是创建一个对话框的模板(字段数、类型等-需要的信息,而不是如何显示),并将其发送到view类。此视图可以是基于Swing的GUI或简单控制台UI。用户填写对话框模板源的字段和值。 是否有一些Java库实现了这一点?
我知道有GenericDialog,但我不确定是否可以在我的项目中使用它(因为它是ImageJ的一部分)。更重要的是,我觉得这对我来说是“沉重的”。

ImageJ中的Generic dialog扩展了java.awt.Component,那么这是否与您要求对话框模板与视图分离的要求相矛盾

Java的集合将允许您封装信息、类型等

java.util.LinkedHashMap<String,Type> dialog = new java.util.LinkedHashMap<String,Type>;
java.util.LinkedHashMap对话框=新建java.util.LinkedHashMap;
其中,键是字段的名称,值是字段的类型

要创建基于swing的对话框,请参见

提供了与您描述的几乎完全相同的功能:使用键入的输入和输出参数执行可运行操作(称为命令)的灵活机制

通过使用
@参数
注释对命令的输入和输出进行标记,可以定义命令的输入和输出。ImageJ自动填充输入(通常通过使用对话框提示用户输入),并在命令运行后显示输出

如何从用户获取输入取决于哪个(如果有的话)用户界面与ImageJ上下文关联。我们已经实现了对Swing的完整小部件支持,以及“纯”AWT(即
java.AWT
widgets)、ApachePivot和EclipseSWT中的概念验证实现

一些例子:

  • :一个简单的命令示例
  • :执行多种类型参数的命令
所有代码都是BSD-2许可的。在撰写本文时,包含该框架的
ij-core
JAR约为334KB。包含swing小部件的
ijUISwing
JAR约为150KB,但它还包含其他可以剥离的内容(相比之下,
ijUIPivot
JAR仅约为30KB)

综上所述,如果您认为ImageJ 1.x的
GenericDialog
太重了,那么您很可能会对ImageJ2的命令框架(或者这个问题的任何其他解决方案;我认为它不会比
GenericDialog
更“轻”)。但是在这种情况下,也许ImageJ2实现将为您提供一些关于如何实现自己的功能的想法