Flex dataGrid を使用しており、一部の列を数値で並べ替える必要があります。
sortCompareFunction を見ると、ソート関数はソート対象のフィールドを認識している必要があるため、ソートする列ごとに異なる関数を作成する必要があるようです。
ソートするフィールドを関数に渡す方法はありますか? そのため、数値ソート関数は 1 つしか必要ありません。
Flex dataGrid を使用しており、一部の列を数値で並べ替える必要があります。
sortCompareFunction を見ると、ソート関数はソート対象のフィールドを認識している必要があるため、ソートする列ごとに異なる関数を作成する必要があるようです。
ソートするフィールドを関数に渡す方法はありますか? そのため、数値ソート関数は 1 つしか必要ありません。
私はこの関数を使用してそれを行いました:
function fieldNumericSorter(field:String):Function { 戻り関数(obj1:Object、obj2:Object):int { return sign(int(obj1 [field])--int(obj2 [field])); } }
ソートセットが必要な列ごとに
colToBeSorted.sortCompareFunction = fieldNumericSorter( "fieldname");
並べ替えに数値関数を使用しませんでした。代わりに、次のようにしました。
arrayCollObject.addItem({Col1: rowData[0], Col2: parseFloat(rowData[1])});
これはソートを正しく行うようです。