0

我需要使用复选框作为单选按钮。就我而言,我想定义一个复选框组,但我不知道为什么。如果我选择一个复选框,我希望另一个复选框被取消选择

你可以帮帮我吗 ?

谢谢

4

3 回答 3

1

如果您需要静态数量的单选按钮,则可以使用 Spark States。

<s:states>
    <s:State name="check1"/>
    <s:Stage name="check2"/>
</s:States>

<s:CheckBox selected="false" selected.check1="true" click="currentState='check1'"/>
<s:CheckBox selected="false" selected.check2="true" click="currentState='check2'"/>

当您单击第一个复选框时,它会触发“check1”状态,其中第一个复选框被选中,另一个复选框未被选中。单击第二个则相反。显然,这并不像某些人希望的那样灵活。但如果是用于界面元素(例如选项菜单),那就完美了。

如果您了解如何以及何时使用状态,状态将非常有用。上周末,我使用它们创建了一个全 Flex 幻灯片,这是一个很好的例子,说明了这个简单的小阵列有多么强大。

编辑:我只是拼凑了一个简单的应用程序来测试它,它看起来不像使用 click 可以工作。不过,我相信您可以修改另一个事件以使其正常工作。抱歉,这不起作用。

于 2012-08-30T05:59:58.580 回答
0

我会使用RadioButtons,但如果你真的想这样做,我会采用 LondonDrugs_MediaServices 方法。

CheckBox并且RadioButton都从ToggleButtonBase.

创建您自己的CheckBoxRadioButtonSkin. 复制CheckBoxSkin到它并重命名hostComponent.

然后在你radioButton的皮肤上使用这个皮肤,让它看起来像复选框。

于 2012-08-29T02:19:58.047 回答
0

我之前有过这样的要求,我使用了一个带有 Checkbox 的 Datagrid 作为 itemRenderer。

我对 Checkbox 进行了子类化,覆盖了datagetter,以便每次单击它时,Datagrid 的所有项目都未选中,除他之外未选中。这种方法获得了一些优点:

  1. 灵活地以编程方式添加选项数量。
  2. 是否显示选项组的标题。
  3. 如果空间有限,则启用使用滚动条。

希望解决方案是您正在寻找的。

于 2012-08-29T23:20:39.783 回答