Страница: 1 |
Страница: 1 |
Вопрос: Texbox больше 65535 символов
Добавлено: 19.10.10 18:38
Автор вопроса: Zahar | Web-сайт:
В моей проге имеется текстбокс, в которую пользователь в процессе работы после копирования из своего текста вставляет для дальнейшей обработки строки огромной длины. Какой бы не была строка длины, она мануально нормально вставляется и прокручивается в текстбоксе. Но вот "забрать" из этого текстбокса можно только первые 65535 символов.
Это меня не устраивает. Можно как-то забрать всю строку (может быть что-то из АПИ)?
Сразу оговорюсь, что ричтекстбокс тоже не подходит - строки могут быть больше, чем позволяет даже этот контрол.
Ответы
Всего ответов: 15
Номер ответа: 1
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #1
Добавлено: 19.10.10 19:26
забрать?
Номер ответа: 2
Автор ответа:
Eugy
Вопросов: 0
Ответов: 73
Профиль | | #2
Добавлено: 20.10.10 04:33
Выделяешь буфер в памяти размером на единицу больше, чем возвращает SendMessage hwnd, WM_GETTEXTLENGTH и используешь его как параметр в WM_GETTEXT.
Если нужен пример, укажи язык.
Номер ответа: 3
Автор ответа:
Zahar
Вопросов: 91
Ответов: 67
Web-сайт:
Профиль | | #3
Добавлено: 20.10.10 10:23
Очень нужен пример. Язык VB.
Номер ответа: 4
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #4
Добавлено: 20.10.10 10:33
Контрол RichTextBox. Его знает любая винда.
Номер ответа: 5
Автор ответа:
Zahar
Вопросов: 91
Ответов: 67
Web-сайт:
Профиль | | #5
Добавлено: 20.10.10 10:49
Внимательно читайте мой вопрос. Этот контрол тоже не подходит, т.к. вставляемый текст может быть больше 2МБТ
Номер ответа: 6
Автор ответа:
Администратор
ICQ: 278109632
Вопросов: 42
Ответов: 3949
Web-сайт:
Профиль | | #6
Добавлено: 20.10.10 10:50
Выделяешь буфер в памяти размером на единицу больше, чем возвращает SendMessage hwnd, WM_GETTEXTLENGTH и используешь его как параметр в WM_GETTEXT.
Если нужен пример, укажи язык.
Да-да. Я посмотрю, как он потом с этим буфером будет работать. Он же привык к бейсику, а тут АПИ для работы со строками. Или, хуже того, отдельная библиотека со строковыми функциями.
Номер ответа: 7
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #7
Добавлено: 20.10.10 11:50
Этот контрол тоже не подходит, т.к. вставляемый текст может быть больше 2МБТ
А если хочешь безлаговую работу с большим текстом, пиши свой контрол.
Номер ответа: 8
Автор ответа:
Администратор
ICQ: 278109632
Вопросов: 42
Ответов: 3949
Web-сайт:
Профиль | | #8
Добавлено: 20.10.10 12:39
Проблема не в контроле, а в типе String.
Номер ответа: 9
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #9
Добавлено: 20.10.10 15:25
в vb6 ?
Номер ответа: 10
Автор ответа:
Zahar
Вопросов: 91
Ответов: 67
Web-сайт:
Профиль | | #10
Добавлено: 20.10.10 17:26
А если хочешь безлаговую работу с большим текстом, пиши свой контрол.
Велосипед целесообразно избобретать тогда, когда точно уверен, что он ещё не изобретён...
Не понимаю, о чём Вы, но думаю не о том, что надо.
Да, хотя и в последующих версиях то же самое...
Номер ответа: 11
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #11
Добавлено: 20.10.10 19:17
Да, хотя и в последующих версиях то же самое...
Велосипед целесообразно избобретать тогда, когда точно уверен, что он ещё не изобретён...
Не понимаю, о чём Вы, но думаю не о том, что надо.
Номер ответа: 12
Автор ответа:
Zahar
Вопросов: 91
Ответов: 67
Web-сайт:
Профиль | | #12
Добавлено: 20.10.10 23:52
Я уже писал дважды, что этот контрол из-за пусть большего, но всё же ограничения по длине строки, мне тоже не решает проблему.
Тогда поясните.
Номер ответа: 13
Автор ответа:
Eugy
Вопросов: 0
Ответов: 73
Профиль | | #13
Добавлено: 21.10.10 01:56
Не надо пугать. Надеюсь винда не китайская)
Номер ответа: 14
Автор ответа:
Eugy
Вопросов: 0
Ответов: 73
Профиль | | #14
Добавлено: 21.10.10 07:39
p/s/ я несколко перемудрил, пытаясь показать, что строка - это просто массив байт.)
Номер ответа: 15
Автор ответа:
Zahar
Вопросов: 91
Ответов: 67
Web-сайт:
Профиль | | #15
Добавлено: 21.10.10 15:03
Eugy,
Что ещё сказать - СПАСИБО - ВСЁ РАБОТАЕТ!!