helb
|
Posted: Fri Feb 20, 2015 12:32 Post subject: |
|
|
Да, из-за передачи листа происходит рефреш, и если что-то изменилось, выделение сбрасывается. Для отфильтрованной панели это всегда так.
Можно в конце после цикла Code: | .SendKeys "<хоткей для cm_SaveSelection>" | добавить и восстанавливать запомненное выделение после сброса.
Еще вариант не с листом, а списком в командной строке — тут лимит примерно в 2500 файлов, но форсированного обновления нет:
Code: | ' zebra-mark.vbs (by helb)
' Помечает выделенные подряд файлы через один.
' В TC должен быть назначен хоткей на cm_GotoNextSelected (в данном случае Ctrl+Home), и, соответственно, указан в скрипте (^{Home}) (Ctrl=^,Shift=+,Alt=%)
' TC Parameter: %s (лимит в ~2500 файлов)
cnt = WScript.Arguments.length
if cnt < 2 then WScript.Quit
with WScript.CreateObject("WScript.Shell")
'go to first selected: Home & cm_GotoNextSelected
.SendKeys "{Home}^{Home}"
cnt = cnt / 2
for i = 1 to cnt
.SendKeys "{Down}{Insert}"
next
end with
|
|
|