TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое

Обсуждение только плагинов и утилит для Total Commander.

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

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

Сообщение Flasher »

Эмм... А как насчёт вводных полей в диалогах?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

С ними всё не так просто. Поиском их не найдешь - классы стандартные (например, Edit), а текст может быть любым, в то же время по идентификатору к ним тоже не обратишься - в Delphi идентификаторы не являются фиксированными, как в нормальных программах с диалоговыми окнами (а как было бы здорово). Остаются только альт буква и эн табов...
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV писал(а):классы стандартные
:?: Но они же в одном диалоге разные.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

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

Сообщение Flasher »

А если брать во внимание индекс? Например, в качестве параметра в скобках, типа TEdit(4).
Ну, а комбобоксов много в диалогах не бывает. А к ним тоже не мешало бы обращаться.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

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

Сообщение Flasher »

Ну, да. Идентификаторы же обзываются по возрастанию вроде. Но если можно отслеживать по скобкам в 3-м параметре, как я предложил, было бы ещё лучше.
А сейчас, хочешь сказать, на первое поле прыгнет? Я не пробовал ещё.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Ты, похоже, говоришь о том, что AHK добавляет к классам окон в скобках номер окна - но это чисто прихоть AHK, а не стандарт. Если ставишь 10 полей ввода в окно или 10 чекбоксов, у них классы будут одинаковые, различаться они будут по идентификаторам, которые с порядком размещения окон в диалоге никак не связаны (например, в Windows кнопка ОК обычно имеет идентификатор 1, кнопка Отмена - 2, при этом обе расположены в самом низу диалога и имеют одинаковый класс Button). А вот функция FindWindowEx будет перебирать эти поля в порядке их размещения в окне (Z-order, Tab order), и эта нумерация по идее совпадает с используемой в AHK.
Последний раз редактировалось MVV Сб сен 12, 2015 20:55, всего редактировалось 1 раз.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Не-не. Я AHK тут вообще не имел в виду.
Я про чекинг твоей прогой наличия скобок для восприятие номера в них как индекса.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

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

Сообщение Flasher »

В ТС-шных классах их нет в любом случае.
Но для меня любой результат будет приятен.
Последний раз редактировалось Flasher Сб сен 12, 2015 20:59, всего редактировалось 1 раз.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

А всё равно. Параметр - могу добавить.
А сейчас, хочешь сказать, на первое поле прыгнет? Я не пробовал ещё.
Сейчас ищет первое попавшееся.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

MVV
Главное, чтобы это с send работало. Т.е. нужен Control(Click/Focus) какой-то.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Попробуй эту бету:

TCFS Beta 482

Должно работать как-то так:

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

findwnd(TMyPanel, , findwnd(TTOTAL_CMD), 5)
Только непонятно, как ты хочешь это с send использовать - она же сама фокус не устанавливает, она лишь проверяет, что это окно имеет его.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Да, я это понял сразу, поэтому и написал про ControlFocus. В твоём случае - SetFocus.
А просто искать в диалогах - смысл?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Ответить