|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
17.10.2016, 17:38 | #21 |
Пользователь
Регистрация: 17.10.2016
Сообщений: 95
|
я так понял от сюда?
Код:
а почему отмена кнопка крешиться? Последний раз редактировалось stasJun; 17.10.2016 в 17:47. |
17.10.2016, 18:09 | #22 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
не. Там где поток читает байты из файла.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
17.10.2016, 18:21 | #23 |
Пользователь
Регистрация: 17.10.2016
Сообщений: 95
|
не то скинул:
Код:
|
17.10.2016, 18:34 | #24 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
http://doc.qt.io/qt-5/qtextstream.html#pos
или QFile pos (наверно лучше второе судя по описанию первого) или еще можно складывать длину строк (+= line.length()), но 1 байт == 1 символу только если это латинские символы в UTF-8 или если файл не юникодный.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
17.10.2016, 18:38 | #25 | |
Пользователь
Регистрация: 17.10.2016
Сообщений: 95
|
Цитата:
|
|
17.10.2016, 19:06 | #26 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Все нормально с названиями и с первого клика вроде.
Но надо как-то определять завершение поиска (кроме нажатия отмены). Например считать количество завершенных потоков (по сигналу completed). А падает наверно потому что exit как я понял http://doc.qt.io/qt-5/qthread.html#exit не предназначен для этого, он требует event loop. Чтобы убить поток есть terminate, но вообще обычно не стоит так делать. Лучше сделать какой-то "флаг" у потоков, из основного потока устанавливать его при нажатии отмены, а в потоках проверять его периодически и завершаться если надо. Как-то так: Код:
Код:
Код:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
17.10.2016, 19:24 | #27 |
Пользователь
Регистрация: 17.10.2016
Сообщений: 95
|
переделал, но доходит до 91% и стоит, и если назад нажать на старт крешится.
Последний раз редактировалось Alex11223; 17.10.2016 в 19:49. |
17.10.2016, 19:48 | #28 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
91 наверно просто как-то неправильно считается прогресс.
Может быть просто из-за обрезания до целого в setValue накапливается. Я бы так делал: Код:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
17.10.2016, 20:00 | #29 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
а, насчет отмены и завершения, я не заметил, что там есть wait после запуска потоков.
Тогда отмена вообще не может работать, у вас же UI поток занят ожиданием завершения потоков. И прогресс по идее тоже не обновляется во время работы, только после завершения все сразу.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
17.10.2016, 20:01 | #30 |
Пользователь
Регистрация: 17.10.2016
Сообщений: 95
|
исправил, да до 100 % зараз но канссел только меняеться когда 100% пройдет, а так пишеться старт(
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Поиск слов в файле | Stepan_P | Linux (Ubuntu, Debian, Red Hat, CentOS, Mint) | 0 | 25.12.2015 14:14 |
Поиск слов в текстовом файле | slipkos | Помощь студентам | 4 | 02.06.2013 19:18 |
Поиск симметричных слов в файле | Almost | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 10.01.2013 08:53 |
Поиск слов в файле | сушка | Общие вопросы по программированию, компьютерный форум | 1 | 08.04.2012 12:44 |
Поиск слов в текстовом файле | svt | Помощь студентам | 8 | 07.11.2009 19:56 |