Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Action script 2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=49)
-   -   TextField, HTML и новый формат внутри строки (http://www.flasher.ru/forum/showthread.php?t=64155)

BigAdmin 25.10.2004 10:40

TextField, HTML и новый формат внутри строки
 
есть TextField
html=true

в поле написано : mixedFormat
необходимо сделать следующую вещь. Ставим курсор перед буквой F, пишем что-нибудь. Новые буквы будут со стилем Bold
Хотелось бы конечно чтобы стиль брался от левой буквы (как в ворде). Ну да фиг с ним.
Как поменять формат для вновь вводимых букв в данной позиции ???

FreeLander 25.10.2004 11:50

TextField.setNewTextFormat()

BigAdmin 25.10.2004 12:11

нет

Antares 25.10.2004 12:20

Слушай Фрилэндера, он дело говорит.
Просто надо знать формат буквы слева от курсора (в общем случае -- какой формат применять, по какому правилу его брать, решать тебе).

FreeLander 25.10.2004 12:38

Цитата:

Оригинал написал(а) BigAdmin
нет
а почему "нет"? setTextFormat - устанавливает формат уже набранного текста или его фрагмента, а setNewTextFormat - для добавляемого текста
Цитата:

про setNewTextFormat - цитата из хэлпа
Method; sets the default new text format of a text field; that is, the text format to be used for newly inserted text, such as text inserted with the replaceSel() method or text entered by a user .

BigAdmin 25.10.2004 12:39

да я бы послушал, если бы оно работало.
Дело в том, что setNewTextFormat, работает только с последней позиции . Будет очень гуд если я ошибаюсь

банально делаем так......рисуем кнопку, на нее вешаем
Код:

on (click) {
        tfCurrent = myTextFld.getTextFormat();
        tfCurrent.size = 96;
        myTextFld.setNewTextFormat(tfCurrent);
        Selection.setFocus("myTextFld");
        Selection.setSelection(туда где стояли);
}

пишем что-нибудь
"bla bla bla"
встаем в конец нашей тирады, жмем кнопку, пишем еще одно "bla". Все ок. Нужного размера.
Теперь ставим курсор на позицию 4, к примеру. Снова жмем кнопку. Тут же пишем что-нибудь. Failed :-(. Техт того формата, какого символ справа

BigAdmin 25.10.2004 12:40

Цитата:

Оригинал написал(а) FreeLander
а почему "нет"? setTextFormat - устанавливает формат уже набранного текста или его фрагмента, а setNewTextFormat - для добавляемого текста
ага :-) хэлп я читаю. Я тоже надеялся что оно будет работать, ан нет

BigAdmin 25.10.2004 13:59

ух ты........
у макромедии есть такой замечательный компонент , как RichEdit. Вобщем решил я посмотреть как они это сделали.
......а никак. Они просто берут и меняют формат начиная с текущей позиции (+1), то есть меняется формат символа, который и не при делах вовсе

Antares 27.10.2004 11:06

Повторяю: определяй руками формат буквы слева, записывай этот формат, потом его используй вместе с setNewTextFormat

То есть по идее -- 2 шага в алгоритме. А ты, видимо, хочешь в один.

BigAdmin 27.10.2004 11:20

2 Bad Habit, ты пробовал ? Я пробовал.

Находясь внутри строки(абзаца.....не важно, даже между словами, пробел тоже символ и у него тоже есть формат).....так вот.....новые символы будут того формата, какого символ справа. И никакая функция setFormat это дело не спасает, к сожалению.

Вобщем я сделал извратно, но работает правильно (как в ворде) пишем букву и тут же меняем ее формат на такой какой у символа слева или на любой другой.....тут уже по желанию.....


Часовой пояс GMT +4, время: 09:22.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.