flash 8 сортировка данных стрелка - PullRequest
0 голосов
/ 30 ноября 2009

Я использую массив для разбивки сетки данных флэш-памяти 8, достаточно просто. Я также предварительно сортирую массив по одному из полей, также достаточно простому.

Мне бы хотелось, чтобы стрелка сортировки присутствовала при первом заполнении сетки, но это не так!

Пользователь должен щелкнуть ячейку заголовка, чтобы стрелка стала видимой. Есть ли способ отменить это поведение.

Спасибо

1 Ответ

0 голосов
/ 01 декабря 2009

Прошло много времени с тех пор, как я коснулся as2. Очевидно, я не мог заставить вещи работать без хаков.

Обычно вы должны иметь возможность обходиться без dg.dispatchEvent ({type: "headerRelease"}), но нет, похоже, это не работает Я использовал опцию Debug> List Objects, чтобы получить имя заголовка столбца, затем вызвал для него функцию onRelease (). Видимо, это работало только в onEnterFrame, который я позже удалил.

Вот мой код, собранный с помощью документации:

//hacky boolean to check if what we asked for was done
var selfClicked:Boolean = false;

myDP = new Array({name:"Chris", price:"Priceless"},{name:"Daisy", price:"Adequate"}, {name:"Nigel", price:"Cheap"});
dg.dataProvider = myDP;

onEnterFrame = function(){
    if(!selfClicked){
        //ask nicely
        dg.dispatchEvent({type:"headerRelease"});
        //no ? oh well...
        dg.content_mc.header_mc.hO0.onRelease();
        //fix for header label
        dg.content_mc.header_mc.fHeaderCell0._y = dg.content_mc.header_mc.fHeaderCell1._y;
        selfClicked = true;
        delete onEnterFrame;
    }
}

this.headerRelease = function(eventObject){
    //nicely hidden debugging gem here, thanks Jen deHaan!
    trace(mx.data.binding.ObjectDumper.toString(eventObject));
}
dg.addEventListener("headerRelease", this);

НТН, George

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...