Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   TextFormat.url (http://www.flasher.ru/forum/showthread.php?t=50778)

schleicher 31.10.2003 14:22

TextFormat.url
 
Ребята! Весьма легко вставит линк в текстовое поле средствами АС, а вот как его потом снять???

Код:

TextFormat.url=""
, или
Код:

TextFormat.url = null
-
не канают.

Dimonius 31.10.2003 15:13

а false не пробовал? Это предположение.

schleicher 31.10.2003 15:22

Не робит!
 
Похоже, лучшее решение - это в textField.htmlText выхреначивать теги
<A...> </A> - тогда работает, но это несколько неизящный вариант. Можа, в новом флэше это как - нибуть пофиксится?

Dimonius 31.10.2003 15:24

who knows :rolleyes:

Пушистик 31.10.2003 18:30

привидите мне привет кода с использованием url;)
а то я не пойму как его юзать...
myFormat.url="http://www.flasher.ru";

чё та не пашет :D

llllllllll 31.10.2003 18:50

Можеть, что-то вроде этого:

tx = new TextFormat();
tx.url = "http://www.xxx.com";
tx.underline = true;
t.setTextFormat(tx);

onMouseDown = function(){
tx.url = null;
tx.underline = false;
tempText = t.text;
t.htmlText = tempText;
t.setTextFormat(tx);
}

// естественно должно быть текстовое поле t и ченить в него можно накатать :)

Пушистик 31.10.2003 19:36

я так понял url должно сделать из текста ссылку...или нет? :confused:

llllllllll 31.10.2003 19:55

Пушистик, ты как всегда прав :)

MerlinTwi 02.11.2003 22:38

Тоже столкнулся с этой проблемой.
1. В хелпе написано, что надо делать не TextFormat.url = null, а TextFormat.url = ""
2. Это не работает во Flash player 6.0. Если ты установил ссылку, то снять ее уже не получится.
Фиксится весьма интересно. Надо перенести фокус с текстового поля на какой-либо другой элемент, а потом вернуть фокус ввода (я про Selection.setFocus), тогда можно убрать ранее поставленный url
3. Для Flash player 7.0 такой проблемы нет.

schleicher 03.11.2003 14:02

Попробовал и так. Всё равно, ссылка не снимается. В мануале действительно пишут про "" , но и начал - то я с неё, да эффекта - ноль. Кстати, запускал и в седьмом плейере - проблема остаётся. Ежли у кого есть работающий вариант - скинте с исходником, пожалуйста!

Пушистик 03.11.2003 16:03

schleicher, да ее можно снять новым TextFormat' ом...
ты кинь свой код сюда! а то я уже задолбался юзать это url...

Код:

_root.createTextField("txt", 5, Stage.width/2-50, Stage.height/2-10, 100, 20);
txt.autoSize = 1;
txt.border = 1;
txt.selectable = 0;
txt.text = "Flash";
myFormat = new TextFormat();
myFormat.url="http://www.flasher.ru"; //гыгы...
myFormat.align = "center";
myFormat.font = "Verdana";
myFormat.size = 12;
myFormat.underline=1;
txt.setTextFormat(myFormat);


schleicher 03.11.2003 16:20

Прикольно, Пушистик!
токо твой скрипт не ставит урл! Хотя по идее, должен!
Или ты это и имел в виду?

schleicher 03.11.2003 16:46

Вложений: 1
Вот, файл пушистика с кнопкой, которая должна бы удалять линк. Кстати, чтобы линк робил, надо в текстфиелд добавить
myTextField.html = true;
В этом файле так и есть...
Ещё добавлено текстовое поле, где отображается хтмл - код основного (пушистиковского).
Как видно - кнопка не убирает <a href=....>
В этом - то и проблема!

Кто может решить - сделайте это на примере этих файлов!

Techmaker 03.11.2003 19:04

нету флы :)

Пушистик 03.11.2003 19:23

Цитата:

myTextField.html = true;
ну так бы сразу и сказал!!:)
убираем урлу на нажатие пробела!

Код:

_root.createTextField("txt", 5, Stage.width/2-50, Stage.height/2-10, 100, 20);
txt.autoSize = 1;
txt.border = 1;
txt.selectable = 0;
txt.text = "Flash";
myFormat = new TextFormat();
myFormat.url="http://www.flasher.ru";
myFormat.align = "center";
myFormat.font = "Verdana";
myFormat.size = 12;
myFormat.underline=1;
txt.html = 1;
txt.setTextFormat(myFormat);
Key.addListener(this);
this.onKeyDown = function() {
    if (Key.isDown(Key.SPACE)) {
        txt.html = 0;
        trace("Урла убрана!");
    }
};


Пушистик 03.11.2003 20:11

Вложений: 1
а вот и с кнопкой...

Techmaker 04.11.2003 03:18

2Пушистик

code:
--------------------------------------------------------------------
createTextField("txt",5,Stage.width/2-50,Stage.height/2-10,100,20)
txt.autoSize = true;
txt.border = true;
txt.selectable = false;
txt.text = "flasher";
txt.type="static"
txt.html=true
txt.setTextFormat(new TextFormat(font="Verdana",size=12,Color=0x000000,bold=true,italic=false,underline=true,url="http://www.flasher.ru",target="_blank",align="left",leftMargin=2,rightMargin=2,indent=0,leading=2));
--------------------------------------------------------------------

хе-хе, новый способ использования TextFormat :)

schleicher 04.11.2003 09:57

Вложений: 1
НЕ ТО!
Пушистик, ты, канэшно, маладэц!
Но - htmlText должен остаться! надо толко урлу выкинуть, причем из хтмл - кода. Я пишу небольшой менеджер контента для сайта, там надо вставлять ссылки и, в случае надобности, удалять их. При этом другая разметка - должна сохраняться.
Кароч, мне здесь важен не результат во флэше, а хтмл - код.

PS: Шлю сорцы again... Авось дойдут!

Пушистик 04.11.2003 12:41

Вложений: 1
Цитата:

Оригинал написал(а) Techmaker

code:
--------------------------------------------------------------------
.....
txt.type="static"
.....
--------------------------------------------------------------------

хе-хе, новый способ использования TextFormat :)

хе-хе, эт чё та новое :D

schleicher, щяс некада! пока могу предложить такой варянт...(конеш, эт фихня...)
приду через пару часов - еще помучаю!
ушёёёлллл....

schleicher 04.11.2003 12:48

Жду :D

Techmaker 04.11.2003 13:08

Цитата:

Оригинал написал(а) Пушистик
хе-хе, эт чё та новое :D
:D
Цитата:

Оригинал написал(а) Пушистик
schleicher, щяс некада! пока могу предложить такой варянт...(конеш, эт фихня...)
приду через пару часов - еще помучаю!
ушёёёлллл....

с нулём это не решение - это обманка :) я тоже хотел предложить :) можно ещё "no" использовать :) фигня вобщем :)
надо подумать :) :) :)

MerlinTwi 04.11.2003 13:23

> schleicher
Как я понимаю, заранее известно и слово и позиция его в тексте с которого нужно убрать URL, тогда вот такой вариант (для твоего файла):

Код:

on (release) {
        myFormat = new TextFormat();
        myFormat.url = "";
        myFormat.align = "center";
        myFormat.font = "Verdana";
        myFormat.size = 12;
        myFormat.underline = false;
        txt.setNewTextFormat(myFormat);

        Selection.setFocus("_root.txt");
        Selection.setSelection(0, 5);
        txt.replaceSel("Flash");

        txt2.text = txt.htmlText;
}


Techmaker 04.11.2003 13:26

Вложений: 1
Обманул заразу, старой доброй фуНкЦией :)
юзайте наздоровие :) ;)

Techmaker 04.11.2003 13:28

2MerlinTwi
в моей функции позиция не так уж и важна :)

Пушистик 04.11.2003 14:33

2Techmaker, ну это тоже обман...! так не чесна! :D я как раз хотел тож наподобе предложить... :)
я думаю, что это глюк плэера...во чё!:)ну хотя еще помудрю...
а хотя...хто запрещал обманывать флэш? :D

Пушистик 04.11.2003 14:52

Вложений: 1
Ё!кажись проблема решена! :D
и без всяких доп. функций! :D
гляньте.... :p
просто надо было юзать setNew TextFormat();... :D

Techmaker 04.11.2003 14:54

Цитата:

Оригинал написал(а) Пушистик
а хотя...хто запрещал обманывать флэш? :D
нихто :)

schleicher 04.11.2003 15:06

Ну да! Я и предлагал так сделать сначала (в одном из первых постов), когда стало понятно, что стандартными средствами это не делается.
Спасибо, дорогие!
Видать, тема - то зацепила! :D

Techmaker 04.11.2003 15:24

Цитата:

Оригинал написал(а) Пушистик
гляньте.... :p
истина всегда где-то рядом :D
Цитата:

Оригинал написал(а) schleicher
Видать, тема - то зацепила! :D
не то слово :D

Пушистик 04.11.2003 15:35

а я уж думал глюк плэера :D

schleicher 04.11.2003 16:00

Вложений: 1
Пушистикам
Твой вариант про setNewTextFormat - катит, трабла в том, чтомне не нужен радикально новый вариант формата (как у тебя), мне нужно взять тот, что есть, и исключить из него урлу. Я сделал именно так, и получил нужный результ! Странно, но вчера я пробовал Ньютекстформат, но эффекта не было. Можа, потому что здесь мы работаем со стилями всего поля, а у себя я юзаю селекшн.
Позже поробую разобраться.
А пока - файло. Вариант пушистика с getTextFormat и выхреначиванием только урлы.

schleicher 04.11.2003 16:03

Вложений: 1
Техмейкеру.
Твоя функция прикольна. Но, видать, она старая. Здесь я популяризирую более лаконичный вариант (функция change2)

schleicher 04.11.2003 16:49

И ещё!
 
Вложений: 1
Примерно тот файл, что мне и нужен. То, с чего начинали!
Ставим урлу и убираем!
Как видно - не робит. Работают все свойства текстформата, кроме урлы. Реально работающий вариант - связан с выхлёстыванием тегов из хтмлтекста
Смотрите, советуйте!

Techmaker 04.11.2003 17:45

Цитата:

Оригинал написал(а) schleicher
Твоя функция прикольна. Но, видать, она старая. Здесь я популяризирую более лаконичный вариант (функция change2)
молодец. рульно мыслишь, а я эту про функцию уже давно забыл :)
Цитата:

Оригинал написал(а) schleicher
А пока - файло. Вариант пушистика с getTextFormat и выхреначиванием только урлы.
getTextFormat(); полезная штука :)
Цитата:

Оригинал написал(а) schleicher
Как видно - не робит. Работают все свойства текстформата, кроме урлы. Реально работающий вариант - связан с выхлёстыванием тегов из хтмлтекста
Смотрите, советуйте!

меня приколола фраза "выхерить теги <A>", но опять же исходник оказался пустым :)

schleicher 05.11.2003 09:16

Вложений: 1
XXX Мать! Чо- то, видимо у мене с раром. Стоко раз это западло получается. Видимо, криво я его кракнул!
Сорцы агейн!
гетТекстФормат - мега прикольная штука, особенно, ежели прописывать start & end (see Flashhelp)

Techmaker 06.11.2003 03:23

Вложений: 1
опять же, предлогаю обман :)

schleicher 06.11.2003 09:26

Проблема теперь другая. Возможно, её надо обсуждать в другом месте. То, что убрать урлу средствами текстформата-нельзя, мы это уже давно поняли. Но моя трабла в том, что к примеру есть текст в фиелде, где уже стоит пяток разных урлов, а убрать надо одну - на основании селекшена. (как в ворде) Я ить говорил, что пишу контент - менеджер - сиречь ворд. Может у кого есть функция, которая на основании позиции символа в text вычисляет позицию символа в htmlText.
Это надо, чтобы урлу глушить в заданной позиции.

Techmaker 07.11.2003 16:42

Цитата:

Оригинал написал(а) schleicher
функция, которая на основании позиции символа в text вычисляет позицию символа в htmlText.
Это надо, чтобы урлу глушить в заданной позиции.

проще будет сделать функцию которая снимает ссылку с определённого выражения

Цитата:

Оригинал написал(а) schleicher
Может у кого есть функция
нет :) но что стоит тебе самому подумать и написать эту специальную функцию? :) я канешна могу написать, как я обычно делаю :) но я хотел бы дать шанс сделать это самому

MerlinTwi 08.11.2003 03:44

> в фиелде, где уже стоит пяток разных урлов, а убрать надо одну - на основании селекшена.

Я же приводил вариант с селекшеном, пост 04-11-2003 09:23

Пушистик 08.11.2003 17:20

а хто-нить ваще пробовал создать поле программно, чтобы в нем часть текста была url, а другая нет?а? :rolleyes:


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

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