PDA

Просмотр полной версии : Проблема с TextArea.setFocus()


Azy
21.12.2006, 14:45
Есть код
...
textArea.setFocus();
...
При использвании оного весь текст выделяется, но управление клавиатура не получает, пока не кликнешь на него. В чем может быть проблема?

iNils
21.12.2006, 14:50
Дайте исходник. У меня все нормально работает.

Azy
21.12.2006, 14:55
class MultilineField extends MovieClip{
private var label : TextField;

private var textArea : TextArea;

function MultilineField()
{
this.init()
}

public function init()
{
label = this.createTextField("label", this.getNextHighestDepth(), 0, 0, 200, 20);
super.createClassObject(mx.controls.TextArea, "textArea", this.getNextHighestDepth());
this.textArea._visible = false;
label.onSetFocus = function()
{
this._parent.textArea._visible = true;
this._parent.textArea.setFocus();
}
}
}

iNils
21.12.2006, 16:10
Я просил исходник, а не код класса.

Azy
21.12.2006, 16:14
Лови.

iNils
21.12.2006, 16:31
Начнем с того, что showExt (в котором вызывается setFocus) не вызывается.

motor4ik
21.12.2006, 16:34
ну вообще странно ,а почему тогда текст выделяется? (исходник я не смотрел, просто по тексту изначальному спрашиваю)

iNils
21.12.2006, 16:36
У меня и текст не выделяется.

Azy
25.12.2006, 10:01
Начнем с того, что showExt (в котором вызывается setFocus) не вызывается.
Как не вызывается?
//Events init
textArea.onKillFocus = function (obj:Object)
{
this._parent.hideExt();
};

label.onSetFocus = function()
{
this._parent.showExt();
};

Azy
25.12.2006, 10:58
Спасибо, вопрос решился.
заменил
textArea.setFocus();
на
textArea.onEnterFrame = function()
{
this.setFocus();
this.onEnterFrame = ""
};

etc
25.12.2006, 11:06
Azy, onEnterFrame нужно или удалять или присваивать null, а не пустую строку. Потому как onEnterFrame — метод. В общем, delete onEnterFrame;

Azy
25.12.2006, 11:08
Понимаю что не правильно. А про delete подробнее можно?