![]() |
Ограничения на размер типа String
Столкнулся с такой проблемой. У меня есть небольшой чат. В нем есть при написании сообщения, в нем применяются стили(цвет сообщение, реагирование на событие клика по имени автора сообщения) и пр. при помощи св-ва TextField.htmlText. Так вот
Код:
html += msg; // msg - новое сообщение |
Сделайте как в скайпе, историю по дням типа того. Ну а вообще поидее такое ограничение не сделать. Ограничение есть, но оно настолько большое, что бояться обычно нечего.
Если посмотрите тот же скайп, видно, что ограничение ЕСТЬ на само сообщение. А НЕСКОЛЬКО сообщений, это отдельные объекты, а не один TF |
не у меня попроще, чем в скайпе. Чисто простой игровой чат.
|
Пускай попроще, но смысл то один, делать надо как положено
|
Там даже дело не в ограничении на длину строки, а в том, что такой огромный текст начнет тупить при прокрутке. in4core дело говорит, надо разбивать на дни
|
А если вместо TextField использовать TextArea это не изменит ситуацию?
|
В основе компонента TextArea сидит все тот же TextField. Или вы думаете он там какой-то особенный?
Тупняк TextField на больших объемах текста имеет место быть. Но вообще, уточните, какой именно объем текста вы пытаетесь отобразить? Потом, вы используте html-форматирование, возможно, закралась ошибка в расстановку тэгов. |
Когда я делал чат, я делал массив строк и функцию update(), которая проходилась по массиву и составляла html для текстового поля.
Хотя нет, я даже делал массив объектов, в объект я сохранял имя, сообщение и дату отправления. А форматировал всё это как надо в функции update(). Это так, чтобы разделить работу программы на несколько частей) Конечно, даже при больших объёмах сообщения обновлялись довольно быстро. Однако хранить и отображать все эти сообщения не желательно, ибо рано или поздно начинаются тормоза, и чтобы их избежать нужно сделать отображение только последних ну там 100-200 сообщений. И сделать кнопочку "просмотреть старые сообщения", которая бы отводила пользователя на 100-200 сообщений назад. Ах, да, я бы вам не советовал напрямую давать пользователям возможность писать в htmlText, ибо таким образом они могут встраивать и картинки(<img src="..." />). Поэтому лучше экранируйте все < и > в сообщении перед отправкой. |
Цитата:
|
| Часовой пояс GMT +4, время: 23:33. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.