Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Стрелка сортировки DataGrid (http://www.flasher.ru/forum/showthread.php?t=126019)

Majus 08.06.2009 03:40

Стрелка сортировки DataGrid
 
Существует ли возможность заставить компоненту типа DataGrid изначально показывать стрелку сортировки колонки, а не после клика пользователем по заголовку колонки?

alatar 08.06.2009 21:55

Существует. Изменить скин HeaderRenderer

Majus 10.06.2009 23:23

Очень мало информации в сети о создании своего рендера. В API Reference вообще пару слов. Может ли кто-то подкинуть полезных ссылок по теме?

dimarik 11.06.2009 01:52

В порядке бреда. Если доступен headerRenderer, то сделать
Код AS3:

myDatagrid.headerRenderer.dispatchEvent('whateverType');

Не силен в AS3 components.

Majus 12.06.2009 00:39

2 dimarik: Это я попробовал в первую очередь. Ни DataGridEvent.HEADER_RELEASE, ни MouseEvent.MOUSE_UP не принесли никакого результата.

Я зашел в тупик. Я могу унаследоваться от HeaderRenderer, но ничего не знаю о его защищенных методах и не могу изменить его стандартное поведение.

Создание же наследника Sprite или LabelButton не приводит ни к чему, так как после передачи его в качестве headerRenderer заголовки таблицы перестают рисоваться вообще.

AlexStukoff 25.06.2009 14:52

Например вот так: :)

Код:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
    <mx:Script>
        <![CDATA[
            import mx.collections.Sort;
            import mx.collections.SortField;
 
            private function init():void {
                // Создаем сортировку по колонке  "idx"
                arrColl.sort = new Sort();
                arrColl.sort.fields = [new SortField("idx", false, true)];
                arrColl.refresh();
            }
        ]]>
    </mx:Script>
 
    <mx:DataGrid id="dataGrid"
            dataProvider="{arrColl}"
            creationComplete="init();">
        <mx:columns>
            <mx:DataGridColumn dataField="idx" />
            <mx:DataGridColumn dataField="c1" />
        </mx:columns>
    </mx:DataGrid>
 
</mx:Application>


dimarik 25.06.2009 15:16

Cпрашивали про флешовый компонент fl.controls.DataGrid.


Часовой пояс GMT +4, время: 21:40.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.