· Начало · Статистика · WASM.RU · Noir.Ru ·

 WASM Phorum (Оффлайн - 24.11.2003) —› WASM.WIN32 —› вопрос о ListBox

Посл.отвђт Сообщенiе


Дата: Мар 29, 2003 14:18:19

как в ListBox поместить несколько элементов сразу? чтоб не писать несколько раз:
invoke SendMessage,hLISTBOX1,LB_ADDSTRING,0,ADDR string1
invoke SendMessage,hLISTBOX1,LB_ADDSTRING,1,ADDR string2

или чтоб не делать цикл.
- это в целях увеличения производительности


Дата: Мар 30, 2003 05:51:38

asmer
invoke SendMessage,hLISTBOX1,LB_ADDSTRING,0,ADDR string1
invoke SendMessage,hLISTBOX1,LB_ADDSTRING,1,ADDR string2


встречный вопрос:
что означают 0 и 1 в качестве wParam'а

p.s. думаю проще сделать свой ListBox


Дата: Мар 31, 2003 04:30:19

как я понял 0 и 1 это порядковые номера в таблице или подругому ID номера, а как ты предлогаешь создать свой ListBox ?


Дата: Мар 31, 2003 20:10:41

Создавать собственный лист надо только если все попытки увеличить производительность были исчерпаны.

1. Чтобы LB_ADDSTRING не рисовал каждый раз - использовать WM_SETREDRAW.

2. Если число елементов в листе более 100 - LB_INITSTORAGE.
=========
MSDN говорит что WPARAM для LB_ADDSTRING должен быть нулем.


Дата: Апр 1, 2003 03:16:18

0 и 1 это порядковые номера в таблице или подругому ID номера

для вставки по порядковому номеру нужно использовать:

LB_INSERTSTRING
wParam = (WPARAM) index; // item index
lParam = (LPARAM) (LPCTSTR) lpsz; // address of string to insert

А создавать свой ListBox, видимо уже не придется :)


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.070