Показать сообщение отдельно
Старый 21.08.2009, 18:23
exprize вне форума Посмотреть профиль Отправить личное сообщение для exprize Найти все сообщения от exprize
  № 1  
Ответить с цитированием
exprize

Регистрация: Aug 2009
Сообщений: 9
Attention Помогите убрать моргание

Как убрать моргание картинок? Когда происходит какое-нибудь событие картинки как-будто перерисовываются... + при выборе картинки зелёная плёнка типо выбрал, остаётся за ней! Получается как-будто и не выбрал ничего! + всё моргает...

==========
В программе:
==========
Код AS1/AS2:
dataProvider.getPhotos(ID, AlbumID , function(success:Boolean)
{
if (success)
{
EventDispatcher.initialize(My_dataGrid);
 
Pictures_Array = new Array();
for (var i:Number = 0; i<this.firstChild.childNodes.length; i++)
{
Pictures_Array.addItem({data: this.firstChild.childNodes[i].childNodes[3].firstChild.nodeValue});
}
My_dataGrid.dataProvider = Pictures_Array;
My_dataGrid.getColumnAt(0).cellRenderer = "ImageCellRenderer";
My_dataGrid.getColumnAt(0).headerText = "Список:";
My_dataGrid.getColumnAt(0).width = 130;
My_dataGrid.rowHeight = 130;
}
});
===============
В ImageCellRenderer:
===============
Код AS1/AS2:
import mx.data.encoders.Num;
import mx.utils.Delegate;
class ImageCellRenderer extends MovieClip
{
private var image : MovieClip;
private var imageLoader : MovieClipLoader;
private var loadListener : Object;
private var listOwner : MovieClip;
private var getCellIndex : Function;
private var getDataLabel : Function;
 
private static var PREFERRED_HEIGHT : Number = 130;
private static var PREFERRED_WIDTH : Number = 130;
 
private var cellWidth : Number;
private var cellHeigth : Number;
 
public function ImageCellRenderer()
{
image = createEmptyMovieClip('image', getNextHighestDepth());
imageLoader = new MovieClipLoader();
loadListener = new Object();
imageLoader.addListener(loadListener);
loadListener.onLoadInit = Delegate.create(this, alignImage);
}
 
public function setSize(w:Number, h:Number):Void
{
cellWidth = w;
cellHeigth = h;
 
alignImage();
}
 
public function setValue(str:String, item:Object, sel:Boolean) : Void
{
if (item != undefined)
{
imageLoader.loadClip(item[getDataLabel()], image);
image._visible = true;
}
image._visible = false;
}
 
public function getPreferredHeight() : Number
{
return PREFERRED_HEIGHT;
}
 
public function getPreferredWidth() : Number
{
return PREFERRED_WIDTH;
}
 
private function alignImage() : Void
{
image._x = (cellWidth - image._width) / 2;
image._y = (cellHeigth - image._height) / 2;
}
}
Добавлено через 71 час 57 минут
так никто и не ответил!