![]() |
|
||||||||||
|
|||||
|
вот код:
for(j=0 ; j<_root.catalog[section].length ; j++){
if(_root.catalog[section][j].quantity==0){
continue;
}
name = "but" add i add "_" add j;
search_result.createEmptyMovieClip(name,i*2000+j+20);
obj = search_result[name];
obj._x = 1;
obj._y = k*17 + cur_y;
obj.createRect(0,0,330,16,0x000000,0);
obj.n = j;
obj.section = section;
// вот создается инпут-поле
obj.createTextField("quan",i*2000+j+1620,331,-1,30,16);
obj["quan"].type = "input";
obj["quan"].restrict = "0-9";
obj["quan"].text = _root.catalog[section][j].quantity;
obj["quan"].setTextFormat(_root.formCatalogListi);
obj["quan"].embedFonts = true;
obj["quan"].onSetFocus = function(){
tf = this.getTextFormat();
tf.align = "left";
this.setTextFormat(tf);
}
obj["quan"].onKillFocus = function(){
tf = this.getTextFormat();
tf.align = "right";
this.setTextFormat(tf);
_root.catalog[this._parent['section']][this._parent['n']].quantity = this.text;
}
k++;
}
кликаешь мышкой на поле. в нем появляется курсор. но вводить ничего нельзя (он никак не реагирует на нажатия) а если нажать кнопочки влево и вправо (или просто влево, главное, чтобы курсор двинулся), то потом уже все вводится. а если удалить все из поля, то уже ничего ввести нельзя и курсор в нем не отображается что делать?
__________________
*** Последний раз редактировалось John Connor; 04.07.2002 в 22:20. |
|
|||||
|
Мастер Цифрового Облика
|
а вобще на чем тестишь?
ембед убирал? Последний раз редактировалось УильямБрэдберри; 04.07.2002 в 22:25. |
|
|||||
|
Регистрация: Jun 2002
Адрес: Kiev
Сообщений: 3
|
Не рабтает он без ембеда.
этот слой обязательно должен быть под маской и без ембеда там просто ничего не отображается. |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
привет Глук
![]() помнишь была такая тема где чел спросил как мышкой нарисовать поле инпутное с ембедным шрифтом ? я там в конце запостил код... и еще тогда заметил этот глюк: если не поставить курсор куда-нить внутрь строки, то с конца строки ничего нельза ввести но тогда мне было лениво разбираться как это исправить...tst = "Jackdaws love my big sphynx of quartz...";
TFrefine = function (s, e) {
tellTarget (this) {
createTextField("TF", 1, s.x, s.y, e.x-s.x, e.y-s.y);
TF.type = "input";
TF.multiline = this.TF.wordWrap=this.TF.border=true;
TF.variable = "_root.tst";
// TF.text = "Jackdaws love my big sphynx of quartz...";
// ---
TFformat = TF.getTextFormat();
TFformat.font = "FNT";
TF.setTextFormat(TFformat);
TF.embedFonts = true;
// ---
}
};
_root.onMouseDown = function() {
this.createEmptyMovieClip("core", 1);
core.strt = {x:_root._xmouse, y:_root._ymouse};
core.onMouseMove = function() {
var tmp = {x:_root._xmouse, y:_root._ymouse};
var st = {x:Math.min(tmp.x, this.strt.x), y:Math.min(tmp.y, this.strt.y)};
var en = {x:Math.max(tmp.x, this.strt.x), y:Math.max(tmp.y, this.strt.y)};
TFrefine.apply(this, [st, en]);
};
};
_root.onMouseUp = function() {
delete core.onMouseMove;
delete _root.onMouseDown;
// ---------------------------------
// вот так мы победили сырость :)
Selection.setFocus("tst");
Selection.setSelection(tst.length, tst.length-1);
Selection.setSelection(tst.length, tst.length);
// ---------------------------------
delete _root.onMouseUp;
};
в функции _root.onMouseUp решение проблемы простое как три рубля ![]() Последний раз редактировалось Nox Noctis; 05.07.2002 в 16:04. |
|
|||||
|
Регистрация: Jun 2002
Адрес: Kiev
Сообщений: 3
|
Привет, Ноктис!
на самом деле это у меня трабла, а не у Глюка ![]() но твой трехрублевый метод все спас ![]() у меня к тебе сразу встречный вопрос: в этом самом текстовом поле при потере фокуса иногда остается немигающий курсор. не знаешь ли, как его побороть? |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
хм... не видел такого...
именно при потере фокуса ? или при перемещении фокуса на какой-то другой объект ? в принципе можно тем же способом похитрить (с помощью установки\снятия фокуса подряд)... только надо понять в каких-таких случаях это происходит... чтобы зря не гонять курсор туда-сюда... Последний раз редактировалось Nox Noctis; 05.07.2002 в 17:45. |
|
|||||
|
Человек и Здание
|
А если попробовать экстренно перерисовать кадр updateAfterEvent?
__________________
Регардсы. |
|
|||||
|
don't panic!
Регистрация: Aug 2001
Сообщений: 4,121
|
дык надо знать на какой эвент апдейтить
![]() мм... ну, можно в приципе на онКиллФокус... только у меня, например, вообще не получилось добиться застывания курсора, так что проверить это не получится может это вообще системный глючок... |
![]() |
Часовой пояс GMT +4, время: 15:16. |
|
|
« Предыдущая тема | Следующая тема » |
|
|