TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2, 3 ... 121, 122, 123 ... 128, 129, 130  Next  :| |:
Total Commander -> Плагины Total Commander

#1816:  Author: MVVLocation: Ростов-Дон PostPosted: Wed Jan 11, 2017 01:10
    —
Блин, 1050700 - это значение дескриптора окна, которое у меня существовало на момент теста, это не более, чем пример. Smile

В Readme написано, что дескриптор надо передавать в lParam, остальное - дело техники.

У меня, когда фокус в панели, в заголовке появляется дескриптор панели, когда фокус в комстроке - дескриптор Edit-a в комбобоксе комстроки, на кнопке в диалоге - дескриптор этой кнопки...


До кучи выложу обновлённую TCFS2:

TCFS2 Build 550:
+ теперь файлов конфигурации два, TCFS2.ini и TCFS2.Core.ini
+ findwnd умеет пропускать невидимые окна

Смысл двух конфигов в том, что TCFS2.Core.ini не надо синхронизировать при обновлении TCFS2, можно просто заменять (желательно все стандартные функции из TCFS2.ini убрать, они будут браться из TCFS2.Core.ini). Надеюсь, такая схема не сильно замедлит работу. Smile

Ну а поиск активного диалогового окна теперь выглядит так:
Code:
TCFS2 /ef delay(2000) /ei "settext(`window: ` findwnd(,,,,2))"

#1817:  Author: FlasherLocation: Москва PostPosted: Wed Jan 11, 2017 01:38
    —
Я понял, что дескриптор. Но ты предлагаешь как твой код тестировать с неведомым дескриптором?

MVV wrote:
+ findwnd умеет пропускать невидимые окна
Вот этого и касалось. >
Flasher wrote:
Правда, хотелось, чтобы определение активного окна/контрола было в самой TCFS2.



Да, с ini-файлами теперь заморочек больше. Получается, нужно все одноимённые команды переименовывать и переписывать 100500 кнопок и юзеркоманд! Shocked Shocked Shocked

MVV wrote:
Ну а поиск активного диалогового окна теперь выглядит так:
Подставляю tcm(4003)/tcm(2912)/tcm(905) - тихо. Confused

#1818:  Author: MVVLocation: Ростов-Дон PostPosted: Wed Jan 11, 2017 01:49
    —
Quote:
Но ты предлагаешь как твой код тестировать с неведомым дескриптором?

Нет, тебе показалось. Я предлагаю прописать в пример ведомый дескриптор. Very Happy

Quote:
Вот этого и касалось.

Поиск окон возможен напрямую из TCFS2, поэтому он там и сделан, а получение фокуса - нет.

Quote:
Да, с ini-файлами теперь заморочек больше. Получается, нужно все одноимённые команды переименовывать и переписывать 100500 кнопок и юзеркоманд.

Не врублюсь, зачем переименовывать и переписывать? Если ты патчил стандартные, будут вызываться твои патченые.
Можешь тупо оставить всё как есть, TCFS2 не обидится, что файла TCFS2.Core.ini нет.
А можешь один раз убрать из TCFS2.ini команды, которые есть в TCFS2.Core.ini, и больше не париться при обновлениях TCFS2, просто перезаписывая библиотеку TCFS2.Core.ini.

Quote:
Подставляю tcm(4003)/tcm(2912)/tcm(905) - тихо.

А должно быть громко?
После выполнения первой или второй активным окном остаётся окно тотала, после запуска примера в заголовке главного окна отображается его же дескриптор. А после выполнения третьей пример уже отображает дескриптор диалога копирования.

Вот чуть более наглядный (и весёлый) пример, при запуске меняет заголовок найденного активного окна:
Quote:
TCFS2 /ef delay(2000) /ei "settext(`i am active!`, findwnd(,,,,2))"

После нескольких запусков имею такую картину:

#1819:  Author: FlasherLocation: Москва PostPosted: Wed Jan 11, 2017 02:14
    —
MVV wrote:
Нет, тебе показалось. Я предлагаю прописать в пример ведомый дескриптор.
Что-то не наблюдаю. Такие примеры только с толку сбивают. Если лень писать tcm, то пиши хотя бы схематично с [<>].

MVV wrote:
Если ты патчил стандартные, будут вызываться твои патченые.
Так TCFS2.ini остаётся в приоритете? Тогда ОК.
MVV wrote:
Можешь тупо оставить всё как есть, TCFS2 не обидится, что файла TCFS2.Core.ini нет.
Вот с этого надо было начинать. Smile И в ReadMe очень не помешало бы.
MVV wrote:
А можешь один раз убрать из TCFS2.ini команды, которые есть в TCFS2.Core.ini, и больше не париться при обновлениях TCFS2, просто перезаписывая библиотеку TCFS2.Core.ini.
Так одноимёнки патченные всё равно останутся, пока все вызовы с ними не поправлю. Получается, в одном ini будет лишнее.

MVV wrote:
А должно быть громко?
А, я не туда смотрю. В ТС-то у меня заголовок скрыт. Сейчас увидел. А вот при tcm(905,1) меняется у главного окна почему-то. Confused

 После нескольких запусков имею такую картину:

#1820:  Author: MVVLocation: Ростов-Дон PostPosted: Wed Jan 11, 2017 11:25
    —
Quote:
Так TCFS2.ini остаётся в приоритете? Тогда ОК.

Flasher wrote:
Вот с этого надо было начинать. Smile И в ReadMe очень не помешало бы.

Ну RTFM же. Very Happy
Quote:
Так одноимёнки патченные всё равно останутся, пока все вызовы с ними не поправлю. Получается, в одном ini будет лишнее.

Если много чего менял, то конечно оставляй в пользовательском конфиге. Хотя это усложняет обмен командами с другими.

Quote:
А вот при tcm(905,1) меняется у главного окна почему-то.

Опять у тебя всё не так. Smile У меня почему-то работает правильно, заголовок меняется у правильного окна:
Code:
TCFS2 /ef tcm(905,1) delay(2000) /ei "settext(`i am active!`, findwnd(,,,,2))"

Возможно, дело в том, что сообщение посылается в другом потоке. Можно попробовать использовать GetGUIThreadInfo вместо GetFocus, но не факт, что это что-то даст.

Quote:
У меня браузер (без AdBlock) воспринимает этот хост как рекламное содержимое.

Странный у тебя браузер, прямую ссылку на картинку произвольного размера воспринимать как рекламу (хотя, возможно, это из-за ad- в имени хоста).
Выкладывал я на rgho.st, других хостов и не знаю, в которых можно давать прямые ссылки на картинки, а не на промежуточные страницы с кучей рекламы.

#1821:  Author: FlasherLocation: Москва PostPosted: Wed Jan 11, 2017 11:47
    —
MVV wrote:
Ну RTFM же.
Смотрел. Там вроде про удаление не написано.

MVV wrote:
Хотя это усложняет обмен командами с другими.
Так это давно надо было делать, когда команд толком не накопилось. Даже после запроса прошло с полгода.

MVV wrote:
Опять у тебя всё не так.
Так это не у меня не так, это у тебя не так. Smile Я то твой пример тестирую. Там ты запятую не поставил, а сейчас поставил. Теперь работает.

MVV wrote:
Выкладывал я на rgho.st
meson.ad-l.ink - это rgho.st? Зашибись. Ещё и ad-file.com до кучи...
MVV wrote:
других хостов и не знаю, в которых можно давать прямые ссылки на картинки, а не на промежуточные страницы с кучей рекламы.
С любого хоста можно брать прямую страницу (пусть и не всегда сервисно), не выдумывай. Я пользуюсь redload.ru (см. нижние 2 поля после загрузки). На savepic.ru тоже есть, да полно вариантов.

#1822:  Author: MVVLocation: Ростов-Дон PostPosted: Wed Jan 11, 2017 12:09
    —
Quote:
Смотрел. Там вроде про удаление не написано.

Но и про то, что без него всё сломается, тоже не написано. Smile
Quote:
Так это давно надо было делать, когда команд толком не накопилось. Даже после запроса прошло с полгода.

Я даже отвечал на тот запрос. Но созревал долго (хоть и парюсь при синхронизации, т.к. тотал до сих пор не научился хранить бэкапы во временной папке и не даёт нормально синхронизировать файл в защищённой от записи папке), а так, конечно, такую штуку куда удобнее делать на ранних этапах.
Если заметишь, что быстродействие упало - дай знать, самому интересно, будет ли видна разница. Это в случае, если решишься поубирать дубли из пользовательского конфига. Smile

Quote:
meson.ad-l.ink - это rgho.st? Зашибись. Ещё и ad-file.com до кучи...

Да, rghost.ru сильно изменился с тех пор, как был переименован...
Quote:
С любого хоста можно брать прямую страницу (пусть и не всегда сервисно), не выдумывай. Я пользуюсь redload.ru (см. нижние 2 поля после загрузки).

Прямые ссылки можно получить далеко не всегда, многие хостинги хотят денег и/или славы и выдают динамические ссылки, которые валидны очень ограниченное время (порой и с ограничением по адресу).
А как долго твой redload.ru хранит картинки? На сайте об этом ни слова...

#1823:  Author: FlasherLocation: Москва PostPosted: Wed Jan 11, 2017 12:20
    —
MVV wrote:
Если заметишь, что быстродействие упало - дай знать, самому интересно, будет ли видна разница. Это в случае, если решишься поубирать дубли из пользовательского конфига.
Дубли скорее уберу. Прекрасно осознаю общественную пользу, просто пришла она несвоевременно. И тестирование скорее будет небыстрым. По ходу вызова разных команд в разные дни придёт понимание, т.ч. с получением результатов явная неопределёнка, к тому же восприятие сотых секунды - дело тонкое.

 Про обменники:

#1824:  Author: MVVLocation: Ростов-Дон PostPosted: Wed Jan 11, 2017 13:59
    —
Quote:
с получением результатов явная неопределёнка, к тому же восприятие сотых секунды - дело тонкое

Меня вполне устроит, если с виду ничего не изменится. Главное, чтобы не было сильно ощутимого замедления (но оно скорее всего будет заметно только при организации сильно плотных циклов).

А про обменник - убедил, спасибо.

#1825:  Author: MVVLocation: Ростов-Дон PostPosted: Thu Jan 12, 2017 12:38
    —
Так что, поиск активного окна после tcm(905,1) все-таки не срабатывает? Как это воспроизвести?

#1826:  Author: sa PostPosted: Thu Jan 12, 2017 13:25
    —
MVV

У меня срабатывает.

#1827:  Author: FlasherLocation: Москва PostPosted: Thu Jan 12, 2017 13:31
    —
MVV
Внимательней перечитай серёдку поста.

#1828:  Author: MVVLocation: Ростов-Дон PostPosted: Thu Jan 12, 2017 14:21
    —
Flasher wrote:
Внимательней перечитай серёдку поста.

Мог бы и более дружественно сказать, если я что-то пропустил.
И у меня всё так, внимательнее вглядись в команды. В первом случае я вывожу дескриптор активного диалога в шапке главного окна, а во втором (который я назвал более наглядным и весёлым) - пишу "i am active!" в шапке активного диалога. Smile

В общем, главное, что работает.

#1829:  Author: FlasherLocation: Москва PostPosted: Thu Jan 12, 2017 14:25
    —
Перед тестами человек вглядывается не в команды, а в описание:
MVV wrote:
Ну а поиск активного диалогового окна теперь выглядит так:
Связать это с какой-то шапкой весьма затруднительно. Smile

P.S.: Серёдка дружественней, чем середина. Wink

MVV wrote:
В общем, главное, что работает.
Это точно.

#1830:  Author: MVVLocation: Ростов-Дон PostPosted: Thu Jan 12, 2017 17:06
    —
В том примере главное было - показать findwnd(,,,,2), а во что завернуть - дело вкуса, можно отображать в шапке тотала (для отладки очень удобно писать в шапку тотала через settext), можно ещё что-то делать с дескриптором. Smile



Total Commander -> Плагины Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page Previous  1, 2, 3 ... 121, 122, 123 ... 128, 129, 130  Next  :| |:
Page 122 of 130

Powered by phpBB © 2001, 2005 phpBB Group