Slider widget bugs in ExtJS 2.0
www.diybl.com 时间 : 2008-07-07 作者:佚名 编辑:本站 点击: [ 评论 ]
当minValue!=0时,整个绘制的轴会向右(横向)或向下(纵向)平移,当minValue特别大时尤其明显。在开发MultiSlider时发现了这种情况,发现其具有明显的规律性,因此较易解决。解决后,想去ExtJS官方论坛提交该bug,发现已经有人先行发现该问题,但其解决办法并不能涵盖所有情况,如onKeyDown函数等。
详情请见:
ExtJS论坛的slider bug讨论。这里给出
我(phdbrianlee)的 解决方法:
Ext.override(Ext.Slider, {
translateValue : function(v){
return ((v-this.minValue) * this.getRatio())-this.halfThumb;
},
setValue : function(v, animate){
v = v + this.minValue;
v = this.normalizeValue(v);
if(v !== this.value && this.fireEvent('beforechange', this, v, this.value) !== false){
this.value = v;
this.moveThumb(this.translateValue(v), animate !== false);
this.fireEvent('change', this, v);
}
}
});