電子書籍の厳選無料作品が豊富!

Flexについての質問です。
DataGridでCTRLキーを押さずに複数選択する方法を教えてください。
具体的にはDataGridで以下のような機能を実現する方法を教えてください。

(1)DataGridである要素を選択した状態で、マウスで別の要素をクリックすると両方の要素が選択されるようになる。
(2)すでに選択済みの要素をクリックするとその要素が解除されるようになる。

A 回答 (1件)

配列で管理すれば良いと思いますよ。


ただ、リスト選択時に選択が全解除されるのでチカチカします。
(別途イベントを無効にする処理を入れる必要があります。)
あとはアイテムレンダラーを使用してそっちで個別対応するのでも良いでしょうね。

private var pHistoryList:Array = [];
private function onItemClickHandler(event:ListEvent):void
{
var flg:Boolean = true;
for (var i:int=0; i<pHistoryList.length; i++)
{
if ( pHistoryList[i] == event.rowIndex )
{
pHistoryList.splice(i, 1);
flg = false;
break;
}
}

if (flg == true)
pHistoryList.push(event.rowIndex);

cDataGrid.selectedIndices = pHistoryList.concat();
}
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!