PDA

Просмотр полной версии : Selection.


stormaster
19.08.2002, 12:04
Люди, научите плз меня работать с объектом Selection.
Потому как я его действие не ощущаю.
Суть в следующем: Ставлю два динамических поля, одно для выделения, другое для вывода Selection.getBeginIndex(); И во втором поле постоянно светится -1. Помогите.

DeliMIter
19.08.2002, 14:58
Обновляй почаще...

Nox Noctis
19.08.2002, 15:20
_root.createTextField("TF", 1, 0, 0, 0, 0);
TF.type="input", TF.autoSize=true;
TF.text = "Jackdaws love my big sphynx of quartz";
_root.createTextField("idx", 2, 0, 50, 0, 0);
idx.type="dynamic", idx.autoSize="center";
_root.onEnterFrame = function() {
idx.text = Selection.getBeginIndex();
}; что здесь может не работать ?.. :)))

DeliMIter
19.08.2002, 15:40
2Nox

Мне кажется, здесь может не работать... экшн скрипт... Ты и сам знаешь, когда ИМЕННО он будет не работать ;))))))))


createTextField("TF", 1, 0, 0, 0, 0);
TF.type="input";
TF.autoSize=true;
TF.text = "Jackdaws love my big sphynx of quartz";
createTextField("idx", 2, 0, 50, 0, 0);
idx.type="dynamic";
idx.autoSize="center";
function onEnterFrame() {
idx.text = Selection.getBeginIndex();
};

P.S. Круто писать код без флэша под рукой.

Nox Noctis
19.08.2002, 15:51
2DeliMIter: можно поинтересоваться, к чему ты второй раз написал тот же код, а ? :))

рут был поставлен для наглядности - в качестве примера осуществления этой гениальной задачи :)

stormaster
19.08.2002, 17:39
Всем спасибо! Уже работает.

greep
19.08.2002, 23:53
Народ, извините,что встреваю в вашу дискуссию,
... А зачем Selection вообще надо ???

С ув,
Greep

DeliMIter
20.08.2002, 13:27
2Nox

Твой код не работает нигде кроме рута.

2greep

А как же иначе узнавать, какой текст выделен? :D

Nox Noctis
20.08.2002, 13:54
DeliMIter, поздравляю безвозмездно :)
а еще, если произносить его нараспев, то язык путается :)
тоже серьезный недостаток :)

DeliMIter
20.08.2002, 14:00
2Nox

Да, когда доходишь до 0, 0, 0, 0... Совершенно непроизносимо. Надо что-то сделать.

Поедем, Nox Noctis, стреляться,
Давно я в тебя не стрелял...

:))))))))))))))

Nox Noctis
20.08.2002, 14:23
Эту песню не задушишь, не убьешь !.. %))))

greep
20.08.2002, 17:43
Народ, а есть ли у вас примеры приминения этой ф. ???

Если есть, намыльте исход или так объясните,

За усё большое,

С ув,
Greep

stormaster
22.08.2002, 17:23
Все вроде получается, только не знаю как навсегда передать индексы выделения в переменные.
Например есть поле с текстом и поле где вводится textSize.
Должно выполняться следующее: выделил необходимую часть текста, ввел размер шрифта, нажал <ENTER>, все получилось.

Заранее спасибо. :cool:

Nox Noctis
22.08.2002, 17:51
TextFormat может применяться не только ко всему тексту, но и к заданому диапазону его символов... читаешь хэлп про Selection - там есть функции возвращающие начало и конец селекшна... создаешь текстформат и применяешь к выделеннному участку... дешево и сердито :))


кстати, тут есть один баг прикольный:
в хтмле, при изменении ТекстФорматом всяких параметров все меняется как положено, что естесственно... все да не все :))
align в текстовом поле виден (то есть видно, что выравнивание сменилось), но в хтмле никаких изменений не происходит.
единственный вариант - выделить целиком абзац от и до, и тогда align в хтмле тоже сменится :)

stormaster
23.08.2002, 11:33
/* читаешь хэлп про Selection - там есть функции возвращающие начало и конец селекшна... создаешь текстформат и применяешь к выделеннному участку... дешево и сердито :)) */

Все бы хорошо, но когда текстовое поле теряет фокус, Selection сбрасывается. Я выделил в одном поле, перехожу в другое, и Selection уже хранит сведения о последнем поле. Не помогает даже onKillFocus.

Nox Noctis
23.08.2002, 15:04
ну так значит надо сделать чтоб работало :)

вот тут (http://www.xentarknight.narod.ru/TF.html) примерчик который я делал когда разбирался со всей этой ботвой...
— выделяешь область в верхнем поле, щелкаешь на кнопочку форматирования, и наблюдаешь как изменилась хтмл версия поля... как раз на этом примере я обнаружил баг с align'ами

исходник там же (http://www.xentarknight.narod.ru/TF.zip)... в нем все просто как три рубля :) коментов я добавил на всякий случай :)