2012-08-27 85 views
0

我需要使用複選框作爲單選按鈕。 在我的情況下,我想定義一個複選框組,但我不知道爲什麼。 如果我選擇一個複選框,我希望其他複選框取消選擇flex複選框組

你能幫我嗎?

感謝

+0

也許你需要使用RadioButton/RadioButtonGroup而不是Checkboxes? – JeffryHouser

+0

爲什麼你不重新使單選按鈕看起來像複選框? – BadFeelingAboutThis

+2

@LondonDrugs_MediaServices建議絕對是最簡單的解決方案。不過,從用戶體驗的角度來看,我認爲這是一個非常糟糕的想法。用戶期望帶有子彈的這些圓形按鈕以及帶有ckeckmarks的這些方形按鈕表現出某種特定的方式。如果你反過來,你會混淆它們。 – RIAstar

回答

1

如果您需要靜態數量的單選按鈕,則可以使用Spark狀態。

<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」狀態,另一種是未選中。點擊第二個是相反的。顯然,這不像有些人希望的那樣靈活。但是,如果它是一個界面元素(如選項菜單),它是完美的。

如果您瞭解如何以及何時使用它們,各州將非常有用。在過去的這個週末,我創建了一個all-Flex slideshow,這是一個簡單的小陣列功能強大的例子。

編輯:我只是扔在一起的一個簡單的應用程序來測試這個,它看起來不會使用點擊工作。不過,我相信你可以修補另一個事件來實現它。對不起,這沒有奏效。

0

我會用RadioButton S,但如果你真的想這樣做,我會拿LondonDrugs_MediaServices方法。

CheckBoxRadioButton都從ToggleButtonBase延伸。

創建您自己的CheckBoxRadioButtonSkin。將CheckBoxSkin複製到它並重命名hostComponent

然後在您的radioButton上使用此外觀使其顯示爲複選框。

0

我以前有這樣的要求,我用一個Datagrid和Checkbox裏面的itemRenderer。

我對複選框進行了分類,覆蓋了data吸氣劑,這樣每次點擊時,都會取消選中Datagrid的所有項目,除他之外未選中。這種方法獲得了一些優勢:

  1. 靈活地增加編程選項的數量。
  2. 顯示選項組的標題與否。
  3. 如果空間有限制,可以使用滾動條。

希望解決辦法就是你要找的。