widget repaint |
Здравствуйте, гость ( Вход | Регистрация )
widget repaint |
kuler |
18.3.2009, 12:56
Сообщение
#1
|
Танцор диско Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: -1 |
вызываю в большом цикле чтобы форма с прогресс баром шевелилась, но она не шевелится. processEvents не предлагать
|
|
|
kwisp |
18.3.2009, 13:00
Сообщение
#2
|
астарожна ынтжинэр Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23 |
kuler,
а без repaint не шевелится? |
|
|
kuler |
18.3.2009, 14:52
Сообщение
#3
|
Танцор диско Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: -1 |
|
|
|
BRE |
18.3.2009, 15:23
Сообщение
#4
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
|
|
|
kuler |
18.3.2009, 17:01
Сообщение
#5
|
Танцор диско Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: -1 |
|
|
|
kuler |
19.3.2009, 10:51
Сообщение
#6
|
Танцор диско Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: -1 |
никаких идей не появилось?
|
|
|
Tonal |
19.3.2009, 11:22
Сообщение
#7
|
Активный участник Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17 |
Ежели сделать по правильному (своя модель) не можешь, то делай так:
1. Дизабли интерфейс перед циклом (чёб усер не ткнул куда попало). 2. Вызывай processEvents на каждой 100-ой или 1000-ной итерации. 3. После цикла енабли интерфейс. |
|
|
kuler |
19.3.2009, 11:43
Сообщение
#8
|
Танцор диско Группа: Участник Сообщений: 441 Регистрация: 11.9.2008 Из: Москва Пользователь №: 289 Спасибо сказали: 6 раз(а) Репутация: -1 |
а почему репаинт не работает? в хелпе написано что он приводит к немедленной перерисовке
Дизабли интерфейс перед циклом (чёб усер не ткнул куда попало). 2. Вызывай processEvents на каждой 100-ой или 1000-ной итерации. 3. После цикла енабли интерфейс. не катит, если после 1000 то тогда прогресс будет тормозить, если после 100, а итемов будет скажем 3000, то тогда 30 раз листвиджет будет обновляться что некрасиво и опять же тормозно, причем чем дальше тем тормознее (попробовал с 15 - в начале быстро, а потом раз в полсекунды обновляется и продолжает замедляться) |
|
|
Текстовая версия | Сейчас: 29.3.2024, 12:07 |