gdi+ + скорость отрисовки приложения

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

gdi+ + скорость отрисовки приложения

Сообщение Ramzes » 07.06.2006 (Ср) 10:13

Я рисую UI своего приложения при помощи GDI+ в большинстве своем это градиенты. С Формами, кнопками, надписями, и прочими вещами проблем нет. Но вот ListView с его количеством объектов просто убивает. Предположим, я рисую в обработчике событий DrawColumnHeader и DrawSubItem:

я создаю объект LinearGradientBrush, затем, используя свойство Grafic я заливаю нужный мне Rectangle градиентом. Но проблема, при рисовании всего этого дела оно жутко тормозит. Просто безумно.

Я подумал, создал свой класс, унаследованный от класса ListView и рисовал в нем (в таком же случае с Form получилось гораздо быстрее), рисовал в методах OnDrawColumnHeader и OnDrawSubItem. Все равно жуть как тормозит, особенно если изменять размер колонки, все SubItem’ы это колонки перерисовываются дважды и мерцают ((((.

Внимание вопрос! Можно ли как нить ускорить процесс рисования?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 07.06.2006 (Ср) 10:30

А чего ты хотел?

GDI+ изначально примерно в 20 раз медленнее GDI. Сделают аппаратное ускорение - будет лучше. Может быть.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 79

    TopList