![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
![]()
Сообщение
#1
|
|
![]() Активный участник ![]() ![]() ![]() Группа: Пользователь Сообщений: 200 Регистрация: 20.04.2007 Пользователь №: 3496 ![]() |
На форуме я не нашел ответ, и решил задать в новой теме. Может подскажет кто начинающему.
Вопшем так: создал динамическое текстовое поле, как положено назвал его в поле Instance Name, в поле Var тоже задал имя. В кадре написал код :stop(); var my_text="Текст" В итоге в дин. поле выводится текст. Все бы хорошо, но если вместо одного слова ввести текст , то перенос каждой строки текста приходиться делать с помощъю "+newline+". Так вот, как прописать чтоб текст сам делал перенос дойдя до края динамического поля ? Может для кого то это просто, а мне не понятно. |
|
|
![]() |
![]()
Сообщение
#2
|
|
![]() тихо-хо :) ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1467 Регистрация: 10.04.2006 Из: Млечный Путь, 3-я планета от Солнца, Россия, Москва, Люблино. Пользователь №: 293 ![]() |
Цитата в поле Var тоже задал имя. вот ето ты зря.. ну ты попал! )) раз задаеш в Instance name то в Var уже ненужно (тоже и наобарот) если назвал в Instace name то текст туда добавляеш так: Код текстовое_поле.text="текст" а если через Var то просто присваеваеш переменной значение Код название_переменной="текст" а переносить можно еще с помощью символа \n Код текстовое_поле.text="строка1\nстрока2\nстрока3" хз че тебе еще сказать ![]() |
|
|
![]()
Сообщение
#3
|
|
Ветеран конференции ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 3912 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Цитата Так вот, как прописать чтоб текст сам делал перенос дойдя до края динамического поля ? Тарас На самом деле всё просто (чтобы автоматически срабатывал перенос). Ты просто невнимательно изучил Properties текстового поля. Можно использовать newline и "\n" (мета символ возврата каретки) - это принудительный перенос. А чтобы автоматически переносило текст, без расстановки принудительных переносов нужно лишь установить правильный режим (работы текстового поля). В свойствах поля режим Line type нужно задать Multiline (вместо Single Line) и тогда заработает автоматический перенос. |
|
|
![]()
Сообщение
#4
|
|
![]() Активный участник ![]() ![]() ![]() Группа: Пользователь Сообщений: 200 Регистрация: 20.04.2007 Пользователь №: 3496 ![]() |
Спасибо. Multiline действительно помогло.
P.S. Класный у тебя сайт ! |
|
|
![]()
Сообщение
#5
|
|
![]() Активный участник ![]() ![]() ![]() Группа: Пользователь Сообщений: 300 Регистрация: 23.04.2006 Из: Днепропетровск, Украина Пользователь №: 317 ![]() |
newline - ламерская константа. Потому что маленькими буквами. Лучше использовать chr(13) - это готичнее ))
|
|
|
![]()
Сообщение
#6
|
|
![]() Активный участник ![]() ![]() ![]() Группа: Пользователь Сообщений: 200 Регистрация: 20.04.2007 Пользователь №: 3496 ![]() |
Мне нужен был автоматический перенос, а не вручную.
|
|
|
![]()
Сообщение
#7
|
|
Ветеран конференции ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 3912 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Цитата Спасибо. Multiline действительно помогло. Тарас, всегда пожалуйста. Цитата Лучше использовать chr(13) - это готичнее )) chr(13) - это ещё один вариант принудительного переноса. Но если ставить переносы вручную, то наиболее профессиональный вариант - это "\n" (в стиле Си, сейчас этот метасимвол поддерживается многими языками программирования). |
|
|
![]()
Сообщение
#8
|
|
![]() Активный участник ![]() ![]() ![]() Группа: Пользователь Сообщений: 300 Регистрация: 23.04.2006 Из: Днепропетровск, Украина Пользователь №: 317 ![]() |
\n не катит. Если попытаться разбить на строки введенный в поле текст (когда стоит multiline), то разбить по \n не получится, работает лишь somefield.text.split(chr(13));
Это можно элементарно проверить - trace(newline=="\n"); |
|
|
![]()
Сообщение
#9
|
|
Ветеран конференции ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 3912 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Цитата \n не катит. Если попытаться разбить на строки введенный в поле текст (когда стоит multiline), то разбить по \n не получится Rohan Всё прекрасно катит и всё получится ![]() У меня во Флеш 6/мх и Флеш 8 \n работает как с Single Line, так Multiline ![]() |
|
|
![]()
Сообщение
#10
|
|
![]() Активный участник ![]() ![]() ![]() Группа: Пользователь Сообщений: 300 Регистрация: 23.04.2006 Из: Днепропетровск, Украина Пользователь №: 317 ![]() |
хм... Юзаю CS3, разбиение по \n НЕ работает...
![]() |
|
|
![]()
Сообщение
#11
|
|
Новичок ![]() Группа: Новичок Сообщений: 1 Регистрация: 9.09.2010 Пользователь №: 10079 ![]() |
Тарас На самом деле всё просто (чтобы автоматически срабатывал перенос). Ты просто невнимательно изучил Properties текстового поля. Можно использовать newline и "\n" (мета символ возврата каретки) - это принудительный перенос. А чтобы автоматически переносило текст, без расстановки принудительных переносов нужно лишь установить правильный режим (работы текстового поля). В свойствах поля режим Line type нужно задать Multiline (вместо Single Line) и тогда заработает автоматический перенос. Не стоит давать людям неправильные советы и при этом говорить, что они что-то там невнимательно изучили ![]() зы: textfield.wordWrap = true; |
|
|
![]()
Сообщение
#12
|
|
Ветеран конференции ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 3912 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Цитата хм... Юзаю CS3, разбиение по \n НЕ работает Rohan Это у тебя в CS3 так. А у меня во Флеш 6 и 8 всё прекрасно работает, как я писал. Это вероятно связано с тем, что Адоб в девятой версии редактора переделали этот функционал. В любом случае у тебя есть возможность использовать newline или chr(13) ![]() |
|
|
![]()
Сообщение
#13
|
|
Ветеран конференции ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 3912 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Цитата зы: textfield.wordWrap = true; OXYGENIUM Данный код является AS-эквивалентом тому методу, о котором я говорил (чтобы в свойствах задать настройки текстового поля). Эти методы эквивалентны. Какой метод выбрать - в редакторе в поле задать настройки или написать AS код - это зависит от разработчика, кому какой метод удобнее. И если код вообще не используется во флешке, то нет и потребности в данном подходе и проще будет сделать всё в свойствах текстового поля в редакторе, а если код используется, то в зависимости от ситуации, можно или в свойствах задать, или в AS-коде. Цитата Не стоит давать людям неправильные советы Твоё утверждение некорректно. Мой совет правильный, потому что, как видно из вышесказанного, данные методы эквивалентны. Данный совет давался исходя из многолетнего опыта - поэтому я давал рабочий совет (что я делаю всегда). И как ты можешь увидеть в теме (в посте от 8.07.2007), он помог Тарасу. Поэтому твоё утверждение вдвойне некорректно. К тому же первым постом на форуме делать некорректные заявления и безосновательно обвинять других участников - это весьма некорректный подход и ты так далеко не зайдёшь ![]() |
|
|
![]()
Сообщение
#14
|
|
![]() Ветеран конференции ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 777 Регистрация: 27.02.2009 Из: Moscow Пользователь №: 9144 ![]() |
На самом деле
![]() Об этом говорит и семерочный хелп: Код this.createTextField("my_txt", 99, 10, 10, 100, 200); my_txt.text = "This is very long text that will certainly extend beyond the width of this text field"; my_txt.border = true; // Вот эта строчка: my_txt.wordWrap = true; Однако, ФП отчего-то очень умный ![]() Но пример работает ![]() Обратный ход на CS3 не работает: Код this.createTextField("my_txt", 99, 10, 10, 100, 200); my_txt.text = "This is very long text that will certainly extend beyond the width of this text field"; my_txt.border = true; // Вот эта строчка: my_txt.multiline= true; Однако, если добавить текстовое поле не кодом, а вручную в редакторе, то выставляя свойство поля в multiline мы автоматически прописываем свойство wordWrap=true. Именно поэтому пример MustLive помог. ![]() Сообщение отредактировал chingachgoog - 10.09.2010 - 12:02 |
|
|
![]()
Сообщение
#15
|
|
Ветеран конференции ![]() ![]() ![]() ![]() Группа: Flash Zone Team Сообщений: 3912 Регистрация: 10.03.2005 Из: Киев Пользователь №: 5 ![]() |
Цитата Именно поэтому пример MustLive помог. Именно поэтому эти методы являются эквивалентными, как я сказал. Установка мультилайна в свойствах - это визуальный метод задания wordWrap (т.е. переноса строк). И для тех кто создаёт текстовые поля вручную нужно пользоваться им. В AS свойство multiline не является эквивалентном, им есть свойство wordWrap. Цитата Однако, ФП отчего-то очень умный Не он умный, а умные разработчики ![]() |
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 5.11.2010 - 05:17 |