ListView - так стыдно...
FreeBasic :: Программирование :: Общее
Страница 1 из 1
ListView - так стыдно...
Вот кусок кода. Далле - по коментариям :
убился с ним уже. lv - это на диалоге (в ресурсах) ListView (его хендл). Находится при старте программы. Все остальные операции с ним нормально... Переменные видимы нормально. Может я чего не учел? Может забыл что? Сколько бы строк не было в списке - постоянно пустая строка...
По поводу переименования структуры: она точно такая же, как в commctrl.bi, но с другим именем у меня в файле с кодом. ФБ почему-то всегда выдает на оригинальную структуру ошибку Expected identifier. Хотя все файлы включаются с ONCE... Я пробовал память и под буфер выделять - результат тот же...
- Код:
Sub StartMonitor()
Dim compCount As UInteger=SendMessage(lv,LVM_GETITEMCOUNT,0,0) 'тут нормально
If compCount=cast(UInteger,0) Then 'если нету элементов в списке - выходим с сообщением
FailedMsg(4)
Else
Dim As LISTVIEV_ITEM Ptr li=Cast(LISTVIEV_ITEM Ptr,Allocate(sizeof(LISTVIEV_ITEM))) 'выделяем память под
'LISTVIEV_ITEM структуру.
'Она аналогична LVITEM,
'просто ФБ чего-то ругается на нее
'я скопировал в код и переименовал
If li=Cast(LISTVIEV_ITEM Ptr,0) Then 'если памяти нету - выходим
FailedMsg(1)
Exit Sub
EndIf
'далее проблемы
FillMem(Cast(Any Ptr,li),cast(UByte,0),sizeof(LISTVIEV_ITEM)) 'зануляем всю структуру - нормально
Dim As ZString*255 sz 'буфер для строки
li->pszText=@sz
li->cchTextMax=254
li->mask=LVIF_TEXT
Dim As ULong ia 'не обращайте внимания
For i As UInteger=0 To compCount-1 'колличество мы получаем правильное и цикл идет правильно
ReDim Preserve IP(i) 'массив
li->iItem=i 'очередной элемент
li->iSubItem=2 'подъитем
SendMessage(lv,LVM_GETITEM,0,li) 'получаем инфу о элементе
MessageBox(frmMain,li->pszText,0,0) 'КАКОГО хрена я всегда получаю пустую строку?
Next
EndIf
End Sub
убился с ним уже. lv - это на диалоге (в ресурсах) ListView (его хендл). Находится при старте программы. Все остальные операции с ним нормально... Переменные видимы нормально. Может я чего не учел? Может забыл что? Сколько бы строк не было в списке - постоянно пустая строка...
По поводу переименования структуры: она точно такая же, как в commctrl.bi, но с другим именем у меня в файле с кодом. ФБ почему-то всегда выдает на оригинальную структуру ошибку Expected identifier. Хотя все файлы включаются с ONCE... Я пробовал память и под буфер выделять - результат тот же...
vbman- Сообщения : 52
Дата регистрации : 2008-11-19
Возраст : 42
Откуда : Украина, Кировоград
FreeBasic :: Программирование :: Общее
Страница 1 из 1
Права доступа к этому форуму:
Вы не можете отвечать на сообщения
|
|