Java 图像J:获取特定的Radiobox

Java 图像J:获取特定的Radiobox,java,vector,imagej,Java,Vector,Imagej,我正在开发一个压缩图像的插件。在“神奇发生”之前,用户应该决定是否要使用三个或四个邻居的方法。 为此,我创建了一个带有RadioButtonGroup的通用对话框 这很好,我的问题是如何获得用户的选择?getRadioButton方法返回一个向量。但我不知道该怎么处理。我的计划是使用按钮的索引,它被选为我的主类的参数,但我看不到一种方法来管理它 你知道吗 编辑:我的代码(不导入) 我的目标是: input = obj.Somefunction; // Input contains for exa

我正在开发一个压缩图像的插件。在“神奇发生”之前,用户应该决定是否要使用三个或四个邻居的方法。 为此,我创建了一个带有RadioButtonGroup的通用对话框

这很好,我的问题是如何获得用户的选择?getRadioButton方法返回一个向量。但我不知道该怎么处理。我的计划是使用按钮的索引,它被选为我的主类的参数,但我看不到一种方法来管理它

你知道吗

编辑:我的代码(不导入)

我的目标是:

input = obj.Somefunction; // Input contains for exampe "A" for Option A

class RealPlugin (parameter input){
    if(input == A) { do something } // Pseudocode...not the real if for a string 

else if {input == B) {do something else }
我的问题是,当我将对象转换为字符串时,它是:

java.awt.CheckboxGroup[selectedCheckbox=java.awt.Checkbox[checkbox0,0,0,66x23,无效,标签=选项A,状态=true}


我确信有一种方法可以进行字符串操作,但我认为这不是正确的方法。我的意思是这一定是一项非常典型的工作(使用radiobuttongroup获得用户选择)必须有一种聪明的方法或功能……

注意:像这样的问题通常在网上回答得更快,更多的ImageJ专家将在网上阅读


要从单选按钮组中检索结果,请使用的
getNextRadioButton
方法。下面是一个可以直接从ImageJ中运行的小Groovy脚本:

导入ij.gui.GenericDialog
gd=新建GenericDialog(“FrameDemo设置”)
项目=[“选项A”、“选项B”]
gd.addRadioButtonGroup(“测试”,“字符串[])项,2,1,“0”)
gd.showDialog()
if(gd.wasOKed()){
answer=gd.getNextRadioButton()
打印答案
}

有了(ImageJ的发行版附带的内容),使用SciJava更容易获得这种选择:

/@String(label=“Choice”,choices={“Option A”,“Option B”},style=“radioButtonVertical”)选项
println选择
在Java中,同样的情况如下所示:

@Plugin(type = Command.class, menuPath = "Plugins>My New Plugin")
public class MyNewPlugin implements Command {

    @Parameter (label="Choice", choices={"Option A", "Option B"}, style="radioButtonVertical") 
    private String choice;

    // your code here
}

有关完整的示例,请参见

:类似的问题通常会在上得到更快的回答,更多的ImageJ专家将阅读这些问题


要从单选按钮组中检索结果,请使用的
getNextRadioButton
方法。下面是一个可以直接从ImageJ中运行的小Groovy脚本:

导入ij.gui.GenericDialog
gd=新建GenericDialog(“FrameDemo设置”)
项目=[“选项A”、“选项B”]
gd.addRadioButtonGroup(“测试”,“字符串[])项,2,1,“0”)
gd.showDialog()
if(gd.wasOKed()){
answer=gd.getNextRadioButton()
打印答案
}

有了(ImageJ的发行版附带的内容),使用SciJava更容易获得这种选择:

/@String(label=“Choice”,choices={“Option A”,“Option B”},style=“radioButtonVertical”)选项
println选择
在Java中,同样的情况如下所示:

@Plugin(type = Command.class, menuPath = "Plugins>My New Plugin")
public class MyNewPlugin implements Command {

    @Parameter (label="Choice", choices={"Option A", "Option B"}, style="radioButtonVertical") 
    private String choice;

    // your code here
}

有关完整示例,请参见

请显示,您所做的事情请显示,您所做的事情请原谅我的延迟回复。我在过去两天尝试使用您的代码片段,但我得到的只是ide(IntelliJ)中的错误代码或消息“无法加载插件(ins)”。我假设我的代码应该在“此处的代码”位置工作,我对它做了一些更改,看看这是否有帮助,但总的来说它不起作用。我看了你的示例,但它对我没有什么帮助。你能给我一个简单的示例,在选择单选按钮后,一个新窗口显示消息“a”表示选项a和“B”对于选项B,当窗口中央出现一个字符串时?很抱歉我反应太晚。我在过去两天试图使用您的代码片段,但我得到的只是ide(IntelliJ)中的错误代码或消息“无法加载插件(ins)”。我假设我的代码应该在“此处的代码”位置工作,我对它做了一些更改,看看这是否有帮助,但总的来说它不起作用。我看了你们的例子,但它对我并没有什么帮助。你们能给我一个简单的例子,在单选按钮选择之后,会出现一个新窗口,其中选项a显示“a”,选项B显示“B”,作为窗口中心的字符串?