|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.12.2016, 11:49 | #11 | |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
Цитата:
|
|
10.12.2016, 12:23 | #12 | |
Форумчанин
Регистрация: 13.02.2012
Сообщений: 867
|
уже не по теме, но раз уж начали
Это еще одно из сообщений/функций, которые непонятно что делают. Увы, я тупой. Цитата:
и в Lparam тоже не понятно что указывать. Откуда я узнаю, сколько памяти будут занимать добавленные строчки? Только если это не будет заранее известно. Например: '1',2',3','10' - 5 байт. Или это произвольное значение, при превышении которого скорость добавления просто снизится, а на лимит оно не влияет? Последний раз редактировалось BLACK_RAIN; 10.12.2016 в 12:29. |
|
10.12.2016, 12:29 | #13 | |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
Цитата:
|
|
10.12.2016, 12:38 | #14 |
Форумчанин
Регистрация: 13.02.2012
Сообщений: 867
|
|
10.12.2016, 12:47 | #15 | |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
Цитата:
SendMessage LB_GETTEXT вернет длину строки и саму строку. .. У вас наверное стереотип, что LB_ADDSTRING при большом количестве вызовов будет долго отрабатывать. Но это верно только в случае, если окно видимо и не выделена память под весь массив строк. А тут как раз вариант, что окно загружено, еще не отображено и все данные заранее известны. |
|
10.12.2016, 12:55 | #16 |
Форумчанин
Регистрация: 13.02.2012
Сообщений: 867
|
|
10.12.2016, 13:01 | #17 |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
Ну, нет конечно.
Сначала считываете данные в цикле из умирающего листбокса. Суммируете общую длину. Убиваете листбокс. Создаете новый. Вызываете один раз LB_INITSTORAGE. И в цикле из сохраненного массива строк добавляете LB_ADDSTRING. Отображаете листбокс. Ну, как-то так... |
10.12.2016, 13:08 | #18 | |
Форумчанин
Регистрация: 13.02.2012
Сообщений: 867
|
Цитата:
Я никогда с массивом строк не работал. Разве это быстрее, чем листбокс? |
|
10.12.2016, 13:18 | #19 |
Форумчанин
Регистрация: 11.07.2010
Сообщений: 914
|
То, что я Вам предложил, по-умному называется сериализацией объекта.
Утверждать, что это именно то, что нужно Вам, я не стану. Поэкспериментируйте. |
10.12.2016, 15:37 | #20 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,330
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Разные стили в одной строке ListBox | rota | Общие вопросы Delphi | 14 | 26.02.2012 21:48 |
Добавить/убрать раскладку | Stilet | Win Api | 5 | 20.07.2011 11:35 |
как добавить в listbox файлы(пишу с помощью bassplayer)(Listbox+opendialog=play) | blackstersl | Общие вопросы Delphi | 11 | 09.06.2010 13:23 |
Чем отличаются стили listBox'a? | TwiX | Общие вопросы Delphi | 2 | 14.11.2009 01:40 |
Как в RichView убрать стили? | KurtWagner | Компоненты Delphi | 2 | 05.02.2009 10:43 |