View previous topic :: View next topic |
Author |
Message |
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Oct 14, 2015 13:57 Post subject: |
|
|
sa wrote: | Мне больше нравится идея ... посредством выделения (cm_SelectBoth – 3311) по шаблону | А мне нет. Пауза в моём случае не годится. А как там у других вообще неясно. Поэтому шаблон отпал. Плюс к этому в моём скрипте есть не только "не старше", но и "не младше", а также "менее", "более" и "совпадает", есть два типа даты, выбор того, что фильтровать. Настраивать кнопки гораздо удобней, плодить шаблоны не требуется, кнопки выходят куда компактнее. Ну и самое главное - никаких мельканий. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2571
|
(Separately) Posted: Wed Oct 14, 2015 16:53 Post subject: |
|
|
Flasher wrote: | есть не только "не старше", но и | Даже "между" нет? И учёта атрибутов и/или размеров файлов?
Особо чувствительные к мельканиям могут сократить их вдвое за счёт создания пользовательской команды em_cd (с командой cd и параметром %A%Z) для вызова шаблона вместо применённой в кнопке внутренней команды 314. Вызов её будет таким: Code: | tem(`em_cd >не старше 1 дня`) | вместо Code: | tcm(314,1) eval(send_wait(`~(>не старше 1 дня){ENTER}`, findwnd(`TCOMBOINPUT`))) |
Last edited by sa on Wed Oct 21, 2015 23:19; edited 1 time in total |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Oct 14, 2015 17:02 Post subject: |
|
|
sa wrote: | Даже "между" нет? И учёта атрибутов и/или размеров файлов? | Про "между" не думал. Можно добавить, в принципе. А вот атрибуты и размеры - это совсем про другое, тут их нет смысла добавлять. Ты ещё поиск дубликатов и инфоплагины назови.
sa wrote: | Особо чувствительные к мельканиям могут сократить их вдвое | Ой, оно там у тебя ещё и двойное. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2571
|
(Separately) Posted: Wed Oct 14, 2015 17:30 Post subject: |
|
|
Flasher wrote: | инфоплагины назови | Лень было всё перечислять.
Flasher wrote: | это совсем про другое | А вот при выделении по шаблону, а не через буфер обмена, проблем с совсем другим не возникнет. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Oct 14, 2015 17:33 Post subject: |
|
|
sa wrote: | А вот при выделении по шаблону, а не через буфер обмена, проблем с совсем другим не возникнет. | С чем - с другим? Главное, что скрипт отрабатывает без сбоев. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2571
|
(Separately) Posted: Wed Oct 14, 2015 17:46 Post subject: |
|
|
Flasher wrote: | А вот атрибуты и размеры - это совсем про другое |
Flasher wrote: | С чем - с другим? |
С атрибутами, например или полями инфоплагинов, бесчисленное множество которых ты же не засунешь в свой скрипт. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Oct 14, 2015 18:00 Post subject: |
|
|
Так я как раз против этого. Разговор не про все шаблоны, а те, которые касаются общего фильтра по дате модицикации. Не сомневаюсь, что комбинации с плагинами и атрибутами в таких подсветках или фильтрах - это редчайшие в плане реального применения случаи. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2571
|
(Separately) Posted: Wed Oct 14, 2015 18:05 Post subject: |
|
|
Flasher wrote: | Разговор не про все шаблоны, |
Я про то же: с твоим скриптом не про все, а с выделением по шаблону и показом выделенного – про все. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Oct 14, 2015 18:19 Post subject: |
|
|
Совсем не про то же (общий фильтр). Мой скрипт у меня хотя бы работает. А твоя кнопка - нет.
Об остальном я уже высказался. Заявленная тема решена мной в расширенных рамках без необходимости тратить время на манипуляции с созданием шаблонов. Нужды подвязывать другие опции, как уже объяснено, не было и нет.
А что касается "между", то в целях соответствия уж точно если и добавлять, то не между датами, как в ТС, а между числами.
С учётом несущественного влияния на скорость выкладываю отдельно. Code: | '•••••••••••••••••••••••••••••••••••••• VBS ••••••••••••••••••••••••••••••••••••••
' Назначение: Фильтрация в активной панели файлов и/или папок по диапазону между
' заданным и текущим значениями единицы времени, между двумя заданными значениями
'
' Условия: путь запуска - пустой
' необходим компонент Script Helper ActiveX for TC
'
' Параметры: <тип элементов> <тип даты> <единица времени> <знак сравнения> <число>
' Добавочные параметры: (6, 7): <знак сравнения> <число>
'
' Тип элементов принимает следующие значения:
' 1 - только папки
' 2 - только файлы
' 3 - папки и файлы
'
' Тип даты принимает следующие значения:
' 1 - дата создания
' 2 - дата модификации
'
' Единица времени принимает следующие значения:
' s - секунда
' n - минута
' h - час
' d - сутки/день
' ww - неделя
' m - месяц
' q - квартал
' yyyy - год
' (не равно)
' Знак сравнения принимает следующие значения: = | <> | < | <= | >= | >
'
' Примечание:
' Связка параметров 6 и 7 аналогична связке 4 и 5. Их применение актуально для
' формирования диапазона между установленными значениями. См. ниже 3-й пример.
'
' Примеры параметров: 3 1 n <= 5 | 2 2 d < 2 | 1 1 m >= 1 <= 3
' Дипазон фильтрации в последнем примере: не менее одного и не более трёх месяцев
'
' Автор: Flasher ©
'•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
Option Explicit
Dim C, Etype, DType, UTime, Comp1, Comp2, Count, Count2, DNow, Dir, F, S, Color, T
With WScript.Arguments
C = .Count : If C < 5 Then MsgBox "Должно быть указано не менее 5-ти " & _
"параметров!", 48, " Фильтрация по временному диапазону" : WSCript.Quit
EType = .Item(0) : DType = .Item(1) : UTime = .Item(2) : Comp1 = .Item(3)
Count = .Item(4) : If C > 5 Then Comp2 = .Item(5) : Count2 = .Item(6)
End With : DNow = Now
Set Dir = CreateObject("Scripting.FileSystemObject")._
GetFolder(CreateObject("Wscript.Shell").CurrentDirectory)
If EType <> 2 Then
For Each F in Dir.SubFolders
If Test(F) Then S = S & F & "\" & vbNewLine
Next
End If
If EType > 1 Then
For Each F in Dir.Files
If Test(F) Then S = S & F & vbNewLine
Next
End If
With CreateObject("TCScript.Helper")
.Pause = 0
If IsEmpty(S) Then
Color = .INIRead(.MainINI, "Colors", "BackColor", "-1")
If Color = "-1" Then Color = 16777215
CreateObject("Internet.HHCtrl").TextPopup "Нет соответствий фильтру!",_
"Verdana,10", 20, 10, Abs(.INIRead(.MainINI,"Colors","ForeColor","-1")), Color
WScript.Sleep 2000
Else
.Wait = True : .LockTC True : T = .GetTextFromClip
.SetTextToClip(S) : .SendCommand 2033, True : .SendCommand 2023, True
.SendCommand 524, True : .LockTC False : .SetTextToClip(T)
End If
End With
Function Test(Item)
Dim D, Cnt
If DType = 1 Then D = Item.DateCreated Else D = Item.DateLastModified
Cnt = DateDiff(UTime, 0, DNow - D) : Test = Eval(Cnt & Comp1 & Count)
If C > 5 Then Test = Test And Eval(Cnt & Comp2 & Count2)
End Function |
Плюс сюда добавил нераздражающее всплывающее окошко под курсором в случае отсутствия фильтрации. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Last edited by Flasher on Sun Oct 25, 2015 14:56; edited 9 times in total |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2571
|
(Separately) Posted: Wed Oct 14, 2015 19:40 Post subject: |
|
|
Flasher wrote: | А твоя кнопка - нет. |
Спасибо за тестирование. Остаётся предложить заинтересованным воспользоваться твоим кодом для TCFS2, благо основная идея в обоих вариантах одинаковая - выделение по шаблону. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Oct 14, 2015 19:43 Post subject: |
|
|
sa wrote: | Спасибо за тестирование. | Своевременно.>> Flasher wrote: | Пауза в моём случае не годится. |
_________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2571
|
(Separately) Posted: Wed Oct 14, 2015 20:01 Post subject: |
|
|
Flasher wrote: | Своевременно |
Я полагал, что это ты о своей команде (для TCFS2) тогда писал: она у меня обрабатывает панель почему-то за несколько секунд. А что за пауза в моей кнопке? Я так понял, она же совсем не пашет у тебя. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Oct 14, 2015 20:07 Post subject: |
|
|
sa wrote: | она у меня отрабатывает почему-то секунд за 5 | Странно. У меня сразу.
sa wrote: | А что за пауза в моей кнопке? | Задержка delay(200). _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2571
|
(Separately) Posted: Wed Oct 14, 2015 20:14 Post subject: |
|
|
Flasher wrote: | работает. А твоя кнопка - нет. |
Тогда это о чём, о паузе в 200*2 миллисекунд для завершения диалога и фильтрации (выделения)? |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed Oct 14, 2015 20:16 Post subject: |
|
|
Есть такая вероятность. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|