Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
прогрессбар между обновлением строк в QTreeView
|
|||
|---|---|---|---|
|
#18+
Добрый день имеется вот такой код: Код: plaintext 1. 2. 3. 4. 5. 6. в котором я удаляю элемент из дерева, вопрос следущего плана куда мне вставить прогресбар окно чтоб как то дать пользователю управлять удалением в данном случаи файлов, и в тоже время обновить дерево когда удалятся элементы? Вовремя удаления сами понимаете может произойти что угодно, от запрета удаления, до отмены, что делать в таких случаях как не повредить дерево?Где производить удаление и как уведомлять модель? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2012, 14:16 |
|
||
|
прогрессбар между обновлением строк в QTreeView
|
|||
|---|---|---|---|
|
#18+
Прогресс - еще одно поле в модели, например int. Отображение - допилить делегат на обработку этого поля в виде прогресс-бара. Состояния удаления - еще одно поле в модели, string, с фиксированными состояниями, типа "Удаляется", "Удалён успешно", "Ошибка доступа" etc. Строку модель отображать умеет. Сам процесс удаления должен выглядеть как-то так: 1. Пишешь механизм удаления файла, который умеет эмитить прогресс выполнения. М.б. в кьюте есть такой, нет времени в документацию смотреть. 2. Делаешь в модели слот, принимающий элемент, прогресс и состояние. 3. По запуску удаления из модели - создаёшь в отдельном потоке экземпляр "удалятора", подключаешь к слоту модели, передаешь нужные данные и и запускаешь. 4. По принятым в слот сигналам обновляешь поле с прогрессом и поле с состоянием. Эмитишь изменения значений, дабы их подхватывала вьюха. 5. Итог - успешное удаление или ошибка. Делаешь delete "удалятору". Если удаление файла прошло успешно - удаляешь элемент из модели. PS В идеале, в случае успешного удаления, нужно подкрасить зелёным поле со статусом, написать в этом поле "Удалён успешно", и вставить задержку ~0.5 секунды, чтобы пользователь успел визуально зафиксировать сей факт. PPS В принципе, можно обойтись одним полем, где положительные значения - это прогресс, а отрицательные - код ошибки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2012, 10:20 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=91&tid=2020732]: |
0ms |
get settings: |
12ms |
get forum list: |
13ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
53ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
2ms |
| others: | 276ms |
| total: | 425ms |

| 0 / 0 |
