Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.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 这是ButtonGroup的影响吗?_Java_Swing_Jtogglebutton - Fatal编程技术网

Java 这是ButtonGroup的影响吗?

Java 这是ButtonGroup的影响吗?,java,swing,jtogglebutton,Java,Swing,Jtogglebutton,我已将JToggleButton添加到ButtonGroup 然后我不能再点击一次来取消选择这个切换按钮 我非常确定,单击JToggleButton可以取消选中它 有没有简单的方法让按钮正常工作 基本按钮组工作正常(单击B并取消选择A) 但是我想要的是当一个被选中并且可以通过再次单击它来取消选中时 简言之,我希望这两种情况都能奏效 A选定-->单击B-->A未选定 选择的-->单击-->未选择的-->按钮(普通JToggleButton) 简言之,是的。。。如果没有按钮组,一切都会按预期工作,但

我已将JToggleButton添加到ButtonGroup

然后我不能再点击一次来取消选择这个切换按钮

我非常确定,单击JToggleButton可以取消选中它

有没有简单的方法让按钮正常工作

基本按钮组工作正常(单击B并取消选择A)

但是我想要的是当一个被选中并且可以通过再次单击它来取消选中时

简言之,我希望这两种情况都能奏效

A选定-->单击B-->A未选定

选择的-->单击-->未选择的-->按钮(普通JToggleButton)


简言之,是的。。。如果没有
按钮组
,一切都会按预期工作,但是:

通常应初始化一组单选按钮,以便 被选中。然而,API并没有强制执行这个规则——一组 单选按钮可以没有初始选择。一旦用户进行了 选择,从那时起只选择一个按钮

因此,基本上只有在启动时才能选择no
JToggle
按钮。一旦选择了一个,我们只能更改所选的,我们不能取消选择所有内容。 如果我们从逻辑上考虑它是有意义的,想象我们有两个选择是或否。。。当时必须至少选择/实施一个选项。或者你必须添加更多的选择,比如是、否和仍然思考(愚蠢的例子,但我不擅长解释)

但总有一个解决办法:

没有支持取消选择所有按钮的API。但是,如果确实要取消选择所有按钮(不建议取消选择),则在
ButtonGroup
上调用
setSelected(null,true)
应该可以实现这一目的

参考资料:


    • 简言之,是的。。。如果没有
      按钮组
      ,一切都会按预期工作,但是:

      通常应初始化一组单选按钮,以便 被选中。然而,API并没有强制执行这个规则——一组 单选按钮可以没有初始选择。一旦用户进行了 选择,从那时起只选择一个按钮

      因此,基本上只有在启动时才能选择no
      JToggle
      按钮。一旦选择了一个,我们只能更改所选的,我们不能取消选择所有内容。 如果我们从逻辑上考虑它是有意义的,想象我们有两个选择是或否。。。当时必须至少选择/实施一个选项。或者你必须添加更多的选择,比如是、否和仍然思考(愚蠢的例子,但我不擅长解释)

      但总有一个解决办法:

      没有支持取消选择所有按钮的API。但是,如果确实要取消选择所有按钮(不建议取消选择),则在
      ButtonGroup
      上调用
      setSelected(null,true)
      应该可以实现这一目的

      参考资料:


      您可以在两个按钮的取消选择事件上执行
      按钮组.clearSelection()
      但是,您可以省略按钮组(误用?)并简单地侦听选择状态。

      您可以在两个按钮的取消选择事件上执行
      按钮组.clearSelection()
      但是,您可以省去按钮组(误用?),只听选择状态。

      Thx很多!我想我会选择一个来初始化组。垃圾桶溢出。:-)太多了!我想我会选择一个来初始化组。垃圾桶溢出。:-)