Открытие элементов Панели управления в Проводнике

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik

Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

dank1 писал(а):А это еще что такое? У меня при нажатии этих кеев ничего не происходит.
Про то, что это такое и что должно происходить — сюда и дальше по ссылкам.
Даже самая богатая фантазия
Не представит себе наши безобразия.
dank1
Сообщения: 25
Зарегистрирован: Чт окт 01, 2015 13:58
Откуда: Санкт-Петербург

Сообщение dank1 »

По идее если можно проверить фокус главного меню, то можно и проверить отсутствие фокуса TMyListBox.
Avada
Спасибо, вроде понял что должно происходить, но ничего не происходит при нажатии, буду разбираться.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

dank1 писал(а):Полностью согласен со всем вышесказанным.
Что-то не похоже.
Зачем в Проводнике открывать Администрирование, Приступая к работе, Программы и компоненты, Устройства и принтеры, Шрифты?
Переменных для родителей я так и не увидел. shell::: также нет смысла повторять всюду, достаточно один раз указать при вызове.
dank1 писал(а):проверить отсутствие фокуса TMyListBox
Панель всегда в фокусе, в том то и дело.
dank1 писал(а):но ничего не происходит при нажатии
По Enter? Если скрипт никакой не мешает, то см. переназначение в Разном.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
dank1
Сообщения: 25
Зарегистрирован: Чт окт 01, 2015 13:58
Откуда: Санкт-Петербург

Сообщение dank1 »

Flasher писал(а):Что-то не похоже.
Зачем в Проводнике открывать Администрирование, Приступая к работе, Программы и компоненты, Устройства и принтеры, Шрифты?
Не помню чтобы обсуждали эти папки (речь вроде шла про раб. стол) впрочем хозяин барин можно просто удалить эти строчки (но все же проводник дает больше настроек в этих папках, например TC не отображает компоненты Windows, а в шрифтах нельзя настроить параметры)

С навигацией разобрался. Я ее отключал в настройках.
Flasher писал(а):Панель всегда в фокусе, в том то и дело.
По крайней мере когда теперь нажимаю Alt+F11/F12 и Alt+Shift+F11 то фокус теряется (по крайней мере визуально выделение с текущего файла в TMyListBox пропадает)
Flasher писал(а):shell::: также нет смысла повторять
Без папки Шрифты нету смысла, а с ней есть. Так как у этой папки отсутствует parsingname и переход по shell::: на эту папку невозможен.
Flasher писал(а):Переменных для родителей я так и не увидел
О чем речь?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

dank1 писал(а):Не помню чтобы обсуждали эти папки (речь вроде шла про раб. стол)
Разве здесь перед скриптом я перечислял папки? Ты с чего начал топик? С жалобы на открытие пустых папок. А теперь что, другие нужнички появились? При чём тут ТС тогда? Внутреннюю команду для шрифтов тоже предлагаешь выкинуть? Проводник форэва? :o
dank1 писал(а):то фокус теряется
Но при этом заголовок панели остаётся активным. Если бы оно так было, то такая фикция сработала бы:

Код: Выделить всё

If MainMenuFocus(WinExist("A")) || (!WinActive("ahk_class TMyListBox1") && !WinActive("ahk_class TMyListBox2"))
dank1 писал(а):Без папки Шрифты нету смысла, а с ней есть. Так как у этой папки отсутствует parsingname и переход по shell::: на эту папку невозможен.
Не понял. При чём тут parsingname? shell пишется там где пишется, а не везде. А шрифты вообще лучше в ТС открывать по cd %WINDIR%\FONTS и нормально обозревать Листер-плагинами.
dank1 писал(а):О чем речь?
\\Все элементы панели управления\
\\Система и безопасность\
и т.д.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
dank1
Сообщения: 25
Зарегистрирован: Чт окт 01, 2015 13:58
Откуда: Санкт-Петербург

Сообщение dank1 »

Flasher
Поправил замечания. Осталось решить вопрос с цепочками навигации Alt+F11/F12, панелью управления Alt+Shift+F11 и деревом каталогов Ctrl+F8. Может пора звать мега-спеца?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

dank1
Лучше поправить не мои замечания, а скрипт, исходя из них. Даже на переменных толком не сэкономил. С цепочками наверняка решается. А вот с деревом и тулбаром - вряд ли.
dank1 писал(а):панелью управления Alt+Shift+F11
Не - управления, а - инструментов.

Кстати, подтверждение в части активности при Alt+F11/F12:

Код: Выделить всё

  Send_WM_COPYDATA(cmd:="A")
  ToolTip, % (Item == "L") ? "Активна левая панель" : "Активна правая панель"
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
dank1
Сообщения: 25
Зарегистрирован: Чт окт 01, 2015 13:58
Откуда: Санкт-Петербург

Сообщение dank1 »

Flasher
Хм. Чего то не догоняю, а если обе неактивны тогда Item чему равен?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

dank1
Ничему. Закомментируй #IfWinActive и проверь в других окнах:

Код: Выделить всё

  Item := ""
  Send_WM_COPYDATA(cmd:="A")
  MsgBox, % (Item = "") ? "Панели неактивны" : "Активна одна из панелей"
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
dank1
Сообщения: 25
Зарегистрирован: Чт окт 01, 2015 13:58
Откуда: Санкт-Петербург

Сообщение dank1 »

Flasher
Поправил скрипт. Работает но через раз. В чем причина не ясно и честно говоря уже и не хочется выяснять так как все это дохлый номер. Если нельзя проверить отсутствие фокуса TMyListBox то проще забить и пользоваться первой версией скрипта или писать свой плагин на крайняк просить разработчика, а путь по которому мы пошли будет иметь кучу подводных камней: со сторонними плагинами (например Twinkey) в каждом меню (контекстном, меню избранных директорий и что их все перебирать? Да проще плагины научиться писать). Так что лично я остановлюсь на первой версии она простая как автомат калашникова и такая же безотказная. Проблему решили и ладно. Всем спасибо.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

dank1
Я извиняюсь, конечно, но это бред:
Send_WM_COPYDATA(cmd:="A")
If (Item <> "")
|| MainMenuFocus(WinExist("A"))
SendInput, {Enter}
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
dank1
Сообщения: 25
Зарегистрирован: Чт окт 01, 2015 13:58
Откуда: Санкт-Петербург

Сообщение dank1 »

Flasher писал(а):Я извиняюсь, конечно, но это бред:
Не за что извиняться, так как этот бред твой:
Flasher писал(а):

Код: Выделить всё

(Item = "") ? "Панели неактивны" : "Активна одна из панелей"
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

dank1
С чего бы? :D
Прояви чуточку внимания. Ты хочешь нажать Enter, когда Item имеет какое-то значение, т.е. по сути когда одна из панелей активна. У меня же проверяется отсутствие значения, при котором показывается сообщение "Панели неактивны", иначе - другой вариант. Посему в моём случае никакого бреда нет.

И да, чтобы ты понимал. Я тот кусочек привёл для убеждения в бесполезности проверки активности панели, а вовсе не для правки твоего кода.


All: Для ценителей работы в ТС выложил своё решение на TCKB.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
dank1
Сообщения: 25
Зарегистрирован: Чт окт 01, 2015 13:58
Откуда: Санкт-Петербург

Сообщение dank1 »

Flasher
Не ошибается тот кто ничего не делает.
Flasher писал(а):All: Для ценителей работы в ТС выложил своё решение на TCKB.
Это пять)
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

dank1 писал(а):Это пять)
С небольшим плюсом. :wink:

Upd: Но чтобы ты сильно не расстраивался, я там же добавил более компактный вариант с запуском любого из элементов ПУ, работающий с любой локалью.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Ответить