![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
AD |
![]()
Сообщение
#1
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
Собственно предлагаю сюда задавать и выкладывать куски кода (с пояснениями, конечно, что этот код делает) для того, чтобы помогли его ну как упростить, сделать более читабельным. Возможно, кому-то это поможет.
Если разрешите, то могу начать. |
|
|
void* |
![]()
Сообщение
#2
|
![]() Программист-самоучка ![]() ![]() ![]() Группа: Участник Сообщений: 429 Регистрация: 4.6.2008 Пользователь №: 193 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
ну вот у меня такая дилема. Нижеприведенный код показывает в дереве (QTreeWidget'e) содержимое определенной папки методом рекурсии, однако состоит это дело из двух функций, и мне почему-то кажется что можно это как-то сделать и через одну функцию:
код
|
|
|
ViGOur |
![]()
Сообщение
#3
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
Ну я дуаю ты сам мог бы догадаться, если бы был внимательней.
Не нужно два цикла, вместо entryList используй entryInfoList в и foreach получай QFileInfo с помощью которого ты можешь узнать файл это или директория (isFile или isDir). Ну а как потянешь за эту ниточку, остальное думаю наложится, если не будет понятно что-то спрашивай. p.s. как сделаешь код здесь выложи, чтобы покритиковали если будет что. ![]() |
|
|
void* |
![]()
Сообщение
#4
|
![]() Программист-самоучка ![]() ![]() ![]() Группа: Участник Сообщений: 429 Регистрация: 4.6.2008 Пользователь №: 193 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
ViGOur, насчет entryInfoList я знал, просто мне казалось что так нагляднее. А так - пока что повозиться с этим кодом нет времени и свободных рук
![]() |
|
|
Red Devil |
![]()
Сообщение
#5
|
![]() Студент ![]() Группа: Участник Сообщений: 68 Регистрация: 6.6.2008 Из: Saint-Petersburg Пользователь №: 194 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
Сообщение отредактировал Red Devil - 6.8.2008, 12:01 |
|
|
void* |
![]()
Сообщение
#6
|
![]() Программист-самоучка ![]() ![]() ![]() Группа: Участник Сообщений: 429 Регистрация: 4.6.2008 Пользователь №: 193 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
упростил однако
![]() ![]() хотя так оно конечно возможно понятнее |
|
|
ViGOur |
![]()
Сообщение
#7
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
Вызывается так:
|
|
|
void* |
![]()
Сообщение
#8
|
![]() Программист-самоучка ![]() ![]() ![]() Группа: Участник Сообщений: 429 Регистрация: 4.6.2008 Пользователь №: 193 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
ViGOur, спасибо! примерно такое у меня и вертелось в голове, только никак не мог выразить это в коде
![]() |
|
|
Tonal |
![]()
Сообщение
#9
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: ![]() ![]() ![]() |
2 ViGOur
Я бы всё таки выделил из этого кода функции создания итема для файла и для директории. Тогда код получается максимально наглядный и все занимаются своим делом:
Сообщение отредактировал Tonal - 7.8.2008, 8:12 |
|
|
ViGOur |
![]()
Сообщение
#10
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 18.2.2025, 11:19 |