Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Картинки в ListView Добавлено: 08.03.07 11:19  

Автор вопроса:  KreAtoR
Как можно что бы при чтении данных из ListView у строк до которых еще не дошли показывался
image1
у строки которая в данный момент считывается показывался
image2
а у строк которые уже считались показывался
image3

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

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 EUGY



Вопросов: 0
Ответов: 454
 Профиль | | #1 Добавлено: 08.03.07 14:33
  Все вопросы, подобные этому, "автоматом" отпадут после выяснения того, что представляет из себя ListView и др. контролы.
Общее решение -"субклассировать" ListView, и делай с ним - что хочешь. Хоть слово из трех букв по диагонали напиши и "фигу" по центру.

Ответить

Номер ответа: 2
Автор ответа:
 KreAtoR



Вопросов: 120
Ответов: 438
 Профиль | | #2 Добавлено: 08.03.07 15:06
Общее решение -"субклассировать" ListView, и делай с ним - что хочешь. Хоть слово из трех букв по диагонали напиши и "фигу" по центру.


а что такое субклассировать если не секрет

Ответить

Номер ответа: 3
Автор ответа:
 EUGY



Вопросов: 0
Ответов: 454
 Профиль | | #3 Добавлено: 08.03.07 15:13
Это значит - упрощенно - влезть в цикл сообшений Windows посылаемых конкретному окну и обработать (блокировать, видоизменить) избранные сообщения до (или после) DefWindowProc данного окна.
В твоем случае нужно что-то нарисовать в окне контрола.
смотри в MSDN
~SetWindowLong, WM_PAINT, DrawIconEx~ и т.д.

Ответить

Номер ответа: 4
Автор ответа:
 D o c a l



ICQ: 408802757 

Вопросов: 76
Ответов: 985
 Web-сайт: www.doc-source.pp.net.ua/
 Профиль | | #4
Добавлено: 08.03.07 16:06
А как удалить елемент которий прочло і вставит новий і з новой картинкой
или вобще іметь два Listview один как есть а второй динамичний все время обновлять все елементи в ньом із разними картинками как такой вариант KreAtoR

Ответить

Номер ответа: 5
Автор ответа:
 D o c a l



ICQ: 408802757 

Вопросов: 76
Ответов: 985
 Web-сайт: www.doc-source.pp.net.ua/
 Профиль | | #5
Добавлено: 08.03.07 16:07
А как
=А как например такой вариант

Ответить

Номер ответа: 6
Автор ответа:
 D o c a l



ICQ: 408802757 

Вопросов: 76
Ответов: 985
 Web-сайт: www.doc-source.pp.net.ua/
 Профиль | | #6
Добавлено: 08.03.07 16:08
Надеюсь понятно.
А как =А как например такой вариант
           ;Doc

Ответить

Номер ответа: 7
Автор ответа:
 KreAtoR



Вопросов: 120
Ответов: 438
 Профиль | | #7 Добавлено: 08.03.07 17:18
посмотрел я посмотрел да и плюнул на эти картинки. сделал просто текстом.

пример приведу для таких как я :)

короче создаем массив wait(2)
wait(0)="wait"
wait(1)="do"
wait(2)="done"
и создаем еще один столбец

frmMain.EventList.ColumnHeaders.Add , , "ЗProgress",800

перед началом работы забиваем этот пустой толбец словом wait ну пита жду обработки

Do While rowsPr > 0
        pr_rows = pr_rows + 1
        Set lItem = EventList.ListItems.Item(pr_rows)
        lItem.ListSubItems.Item(1) = l_wait(0)
        rowsPr = rowsPr - 1
    Loop

потом когда началась обработка определенной строки делаем следующее

lItem.ListSubItems.Item(1) = l_wait(1)

это ставится в самое начало цикла который их обрабатывает (похожая тема
http://vbnet.ru/forum/show.aspx?id=131951
)

а в конце цикла когда уже строка была добавлена на одну единицу ставим следующее

lItem.ListSubItems.Item(1) = l_wait(2)

вот и все

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам