2010-12-15 3 views

ответ

2

Я не верю, что вы можете сделать это напрямую без расширения datagrid, поскольку я не верю, что есть какой-либо способ прямого доступа к заголовку. К счастью, мы имеем высоту заголовка, доступного нам, и можем сравнить его с положением мыши, чтобы вручную изменить курсор. Вот полный пример Flex4:

<?xml version="1.0" encoding="utf-8"?> 
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
       xmlns:s="library://ns.adobe.com/flex/spark" 
       xmlns:mx="library://ns.adobe.com/flex/mx" 
       applicationComplete="init()" 
       > 
    <fx:Script> 
     <![CDATA[ 
      import flash.events.MouseEvent; 
     private function init():void{ 
      this.grid.addEventListener(MouseEvent.MOUSE_MOVE, function():void{ 
       if (grid.contentMouseY <= grid.headerHeight) { 
        useHandCursor = true 
        buttonMode = true 
       } else { 
        useHandCursor = false 
        buttonMode = false 
       } 
      }) 
      this.grid.addEventListener(MouseEvent.MOUSE_OUT, function():void { 
       useHandCursor = false 
       buttonMode = false 
      }) 
     } 
     ]]> 
    </fx:Script> 
    <mx:DataGrid id="grid"/> 
</s:Application> 

Вот вспышка документ о создании/расширении компонентов Flex3 (так как его компонента MX): http://livedocs.adobe.com/flex/3/html/help.html?content=Part4_CreateComps_1.html

Смежные вопросы