Flex DataGrid删除标题MouseOver突出显示 [英] Flex DataGrid Remove Header MouseOver Highlighting
问题描述
可能是以下内容:
我想删除在DataGrid的标头上发生鼠标移动时出现的突出显示。黑客会帮助某人。
我只想从datagrid标题(flex 3)中删除翻转和选择。
我做了什么:
1)创建DataGridHeader的新子类并覆盖drawHeaderIndicator和drawSelectionIndicator
package
{
import flash.display.Sprite;
import mx.controls.dataGridClasses.DataGridHeader;
import mx.controls.listClasses.IListItemRenderer;
public class MyDataGridHeader extends DataGridHeader
{
public function MyDataGridHeader()
{
super();
}
覆盖保护函数drawHeaderIndicator(指示符:Sprite,x:Number,y:Number,width:Number,height:Number,color:uint,itemRenderer:IListItemRenderer):void
{
}
覆盖保护函数drawSelectionIndicator(指示符:Sprite,x:Number,y:Number,width:Number,height:Number,color:uint,itemRenderer :IListItemRenderer):void
{
}
}
}
2)创建一个新的DataGrid子类 - 让MyDataGrid和在构造函数中执行以下操作:
public function MyDataGrid()
{
super();
this.mx_internal :: headerClass = MyDataGridHeader;
....
}
这将强制DataGrid使用您的DataGridHeader 。
I want to remove the highlight that occurs when mouse over occurs on the headers of a DataGrid.
Maybe the following hack will help someone. I simply wanted to remove the rollover and selection from datagrid header (flex 3).
What I made:
1) Create a new subclass of DataGridHeader and override drawHeaderIndicator and drawSelectionIndicator
package
{
import flash.display.Sprite;
import mx.controls.dataGridClasses.DataGridHeader;
import mx.controls.listClasses.IListItemRenderer;
public class MyDataGridHeader extends DataGridHeader
{
public function MyDataGridHeader()
{
super();
}
override protected function drawHeaderIndicator(indicator:Sprite, x:Number, y:Number, width:Number, height:Number, color:uint, itemRenderer:IListItemRenderer):void
{
}
override protected function drawSelectionIndicator(indicator:Sprite, x:Number, y:Number, width:Number, height:Number, color:uint, itemRenderer:IListItemRenderer):void
{
}
}
}
2) Create a new subclass of DataGrid - lets say MyDataGrid and in constructor do the following:
public function MyDataGrid()
{
super();
this.mx_internal::headerClass = MyDataGridHeader;
....
}
This will force DataGrid to use your DataGridHeader.
这篇关于Flex DataGrid删除标题MouseOver突出显示的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!