Изменить курсор на строке сетки данных - PullRequest
1 голос
/ 12 января 2012

Я работаю над проектом flex, и у меня есть сетка данных, которую я бы хотел изменить при наведении курсора на любую строку, содержащую данные.

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

Это то, что я пробовал, но кажется, что он использует курсор в виде руки на самой сетке данных, а не на данных строки.

    <mx:DataGrid x="9" y="47" width="330" height="244" useHandCursor="true" buttonMode="true" mouseChildren="true" horizontalScrollPolicy="{ScrollPolicy.AUTO}" styleName="resultgrid" dataProvider="{acLatest}" doubleClickEnabled="true" itemDoubleClick="doubleClickoverview()"  id="overviewLatest_dg">
     <mx:columns>                   
        <mx:DataGridColumn headerText="Tag" id="overviewLatest_dg_animal_ptag" visible="true" dataField="animal_ptag" width="110" />
        <mx:DataGridColumn headerText="Status" id="overviewLatest_dg_status_status" visible="true" dataField="status_status" width="110"/>
        <mx:DataGridColumn headerText="Sex" id="overviewLatest_dg_animal_sex" visible="true" dataField="animal_sex" width="110"/>
     </mx:columns>
    </mx:DataGrid>

Ответы [ 2 ]

0 голосов
/ 15 января 2012

Завершается использованием itemRollOver & itemRollOut в сетке данных.

Затем просто создается простой класс, который меняет курсор на изображение руки.

DataGrid:

itemRollOver="Cursors.setHandCursor()" itemRollOut="CursorManager.removeAllCursors()"

Класс курсора:

package com {

  import mx.managers.CursorManager;
  import mx.managers.CursorManagerPriority;

  public class Cursors extends CursorManager {

    private static var handCursorList:Array = [];

    public static function setHandCursor():void {   
      [Embed(source="../images/hand.png")]   
      var handCursorClass:Class;
      handCursorList.push(setCursor(handCursorClass, CursorManagerPriority.MEDIUM));
    }  
  } 
}
0 голосов
/ 12 января 2012

Я бы создал itemRenderer и добавил слушатели событий для событий MouseEvent.ROLL_OVER и MouseEvent.ROLL_OUT. В обработчиках событий вы можете изменить курсор, используя cursorManager. Это также дает дополнительное преимущество, позволяя вам изменять курсор на основе некоторых данных или условий для строки, на которую пользователь наводит курсор.

Вот пример по изменению курсора при наведении курсора на компонент. Надеюсь, это поможет вам начать в правильном направлении.

...