Тема: text scrollbar
Показать сообщение отдельно
Старый 01.07.2009, 21:49
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 1  
Ответить с цитированием
in4core
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
По умолчанию text scrollbar

Решил сделать свой скроллбар для dynamic text. Помогите решить проблему :

где txt - динамическое поле
scroller клип полоска для прокрутки как track

Код AS1/AS2:
scroller._x = txt._x+txt._width+10;
scroller._y = txt._y;
 
left = txt._x+txt._width+10;
top = txt._y;
bot = txt._y+txt._height-scroller._height;
 
scroller.onPress = function() {
 
 
	startDrag(this, false, left, top, left, bot);
};
 
scroller.onRelease = function() {
	stopDrag();
 
};
scroller.onReleaseOutside = function() {
	stopDrag();
 
};
Вот нужно чтобы при драгге скролировалось плавно все это дело.
Подскажите куда копать!!! Что то надо решать с функцией scroll видимо но неясно как.
Жду ваших ответов

Добавлено через 1 час 4 минуты
Ну раз никто не помог в это время сам нашел ответ где то из исходника ))).

Вот забодяжил полный скроллер свой берите кому надо. Скроллер только для текста. кому надо для мувиклипов тоде могу скинуть

Код AS1/AS2:
class com.scrollbarTEXT extends MovieClip {
 
	var txt:TextField;// _t - textfield
	var _scroller:MovieClip;// _s - scrollbar
	// _a - step
	public function scrollbarTEXT() {
	}
	private function scrollIt(_t, _s, _a) {
		_s._x = _t._x+_t._width+_a;
		_s._y = _t._y;
 
		var left = _t._x+_t._width+_a;
		var top = _t._y;
		var bot = _t._y+_t._height-_s._height;
 
		_s.onPress = function() {
			startDrag(this, false, left, top, left, bot);
			this.onMouseMove = Update;
		};
		_s.onRelease = _s.onReleaseOutside=function () {
			this.stopDrag();
		};
		function Update():Void {
 
			_t.scroll = _t.maxscroll*(_s._y/_t._height);
		}
	}
}
Добавлено через 1 час 29 минут
Странный факт меня поразил!!! - если я создаю текстовое поле программно тоесть my.text = "4444" то скроллится как надо. А вот если подгружаю текст из хмл например то почему то скроллится не доконца 1/4 чтоли часть не до-скролливается. кто нить знает почему ?

Добавлено через 2 часа 33 минуты
Фиг знает но закономерность такая : Скроллер должен иметь атрибуты не top left и т.д. как я их обозначил а обяз атрибуты
Код AS1/AS2:
startDrag(0,0,0,_a)  где а высота
тогда скроллится все нормально НО согласитесь не удобно однако вызывать клип из под клипа
Код AS1/AS2:
var sc = new com.scrollbarTEXT() 
sc.scrollIt(my_txt,scroller_mc.SCROLLER_MC1,150);
я плачу ((( хочу по нормальному чтоб было помогите уже кто нить


Последний раз редактировалось in4core; 01.07.2009 в 23:16.