TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
Если присмотреться, как устроено действие fs, можно заметить, что оно состоит из односторонних команд:
А каждая команда пишет в Undo, только если она сделала действие. Естественно, при повторном вызове команды она вряд ли что-то сделает. Как результат, пустой список действий для отмены.
Я бы не сказал, что баг, а описал бы это чуть более длинной и непонятной фразой by design. Короче, действие fs не рассчитано на повторный запуск. Чтобы можно было рассчитывать на повторный запуск, нужно написать команду, которая будет проверять полноэкранность (например, любое условие из вызываемых из fs команд) и в зависимости от результата проверки вызывать fs или ничего не делать (или вызывать Undo - получится реверсивная команда).
Код: Выделить всё
fs=db0 dc0 cd0 th0 sb0 cl0 kb0 c0 rm1pm m1Я бы не сказал, что баг, а описал бы это чуть более длинной и непонятной фразой by design. Короче, действие fs не рассчитано на повторный запуск. Чтобы можно было рассчитывать на повторный запуск, нужно написать команду, которая будет проверять полноэкранность (например, любое условие из вызываемых из fs команд) и в зависимости от результата проверки вызывать fs или ничего не делать (или вызывать Undo - получится реверсивная команда).
Здесь уже рассматривали эту проблему, но я так и не понял, справились с ней или это неустранимы баг.
Когда скрываешь элементы интефейса (TCFS2+Autorun.wdx+HideMenu.dll), сворачиваешь (минимизируешь) тотал, а потом разворачиваешь (максимизируешь), то тотал разворачивается на весь экран, перекрывая системную панель быстрого запуска. (реализовал по инструкции описанной на стр. 9. Win7)
Когда скрываешь элементы интефейса (TCFS2+Autorun.wdx+HideMenu.dll), сворачиваешь (минимизируешь) тотал, а потом разворачиваешь (максимизируешь), то тотал разворачивается на весь экран, перекрывая системную панель быстрого запуска. (реализовал по инструкции описанной на стр. 9. Win7)
slideray
Советую ознакомиться с моей статьёй. Примечание должно помочь.
Советую ознакомиться с моей статьёй. Примечание должно помочь.
Как вариант, но не эстетично, поскольку отступ в пикселях можно настроить на одной только машине, тогда как на другой стоит семёрка с панелью гораздо более широкой. Если можно было хотя бы автоматизировать процесс, сделать автоопределение высоты системной панели, с последующим применением результата вычесленных данных в ini-файл.Flasher писал(а):Примечание должно помочь.
А по поводу моего вопроса, этот эффект развёртывания (FullScreen) неустраним, или это можно исправить?
Это особенность системы Windows - приложение со скрытым заголовком, развернутое на весь экран, считается полноэкранным, поэтому система прячет панель задач и висячие панели.
Кстати, ничто не мешает сделать панель на семерке уже:) я, например, первым делом после установки семерки включил маленькие значки на панели задач и выключил это тупое сокрытие заголовков окон, вернув панель к прежнему виду, позволяющему куда более быстрым и удобным образом находить нужное окно.
А вообще, можно написать батник, который будет в зависимости от версии винды запускать TCFS2 с тем или иным параметром - для запуска той или иной команды.
Кстати, ничто не мешает сделать панель на семерке уже:) я, например, первым делом после установки семерки включил маленькие значки на панели задач и выключил это тупое сокрытие заголовков окон, вернув панель к прежнему виду, позволяющему куда более быстрым и удобным образом находить нужное окно.
А вообще, можно написать батник, который будет в зависимости от версии винды запускать TCFS2 с тем или иным параметром - для запуска той или иной команды.
Не широкой, видимо, а высокой. На семёрке можно сделать панель высотой в точности как в XP, у меня она именно такая - в старом добром стиле 98-ой винды.slideray писал(а):Как вариант, но не эстетично, поскольку отступ в пикселях можно настроить на одной только машине, тогда как на другой стоит семёрка с панелью гораздо более широкой.
Как-то я предлагал это MVV, но он быстренько открестился от такой затеи...slideray писал(а):Если можно было хотя бы автоматизировать процесс, сделать автоопределение высоты системной панели, с последующим применением результата вычесленных данных в ini-файл.
Я же свою статью не зря привёл. Вот и надо использовать приведённый метод, где из трея окно будет восстанавливаться в прежний вид. И ещё раз - Fullscreen - это не развёртывание, а скрытие всех оконных элементов. Если же использовать стандартную функцию развёртывания окна, то уже ничего не поделать. Я же использую задание абсолютных (необрезанных) размеров с уменьшением высоты окна в режиме Восстановить + пропорциональное увеличение/уменьшение, что на порядок эстетичней, потому что при "восстановлении" окно всё время будет разполагаться по центру.slideray писал(а):А по поводу моего вопроса, этот эффект развёртывания (FullScreen) неустраним, или это можно исправить?
MVV
Это самое... Какой будет кнопка для смещения сепаратора в положение 5/95 и обратно?
Бушует чья-то пунта.Readme.txt писал(а):Рассмотрим, как это работает, на примере позиции окна по горизонтали. При вычислении выражения # ? 0 : @*7/64 проверяется, равно ли нулю выражение перед знаком ?, и если выражение не равно нулю (т.е. истинно), возвращается первое значение после знака ? (т.е. 0), в противном случае возвращается значение после знака : (т.е. @*7/64). В результате при повторных вызовах команды позиция окна будет переключаться между нулем и 7/64 от размера экрана. Вычисление остальных параметров выполняется таким же образом.Hfccvjnhbv? rfr 'nj hf,jnftn? yf ghbvtht gjpbwbb jryf gj ujhbpjynfkb/ Ghb dsxbcktybb dshf;tybz # & 0 ^ @*7|64 ghjdthztncz? hfdyj kb yek. dshf;tybt gthtl pyfrjv &? b tckb dshf;tybt yt hfdyj yek. (n/t/ bcnbyyj)? djpdhfoftncz gthdjt pyfxtybt gjckt pyfrf & (n/t/ 0)? d ghjnbdyjv ckexft djpdhfoftncz pyfxtybt gjckt pyfrf ^ (n/t/ @*7|64)/ D htpekmnfnt ghb gjdnjhys[ dspjdf[ rjvfyls gjpbwbz jryf ,eltn gthtrk.xfnmcz vt;le yektv b 7|64 jn hfpvthf 'rhfyf/ Dsxbcktybt jcnfkmys[ gfhfvtnhjd dsgjkyztncz nfrbv ;t j,hfpjv/
Это самое... Какой будет кнопка для смещения сепаратора в положение 5/95 и обратно?
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
О ужас, откуда это там взялось...
А пунту я ненавижу и не использую с тех самых пор, как познакомился с ней (лет надцать назад).
А "обратно" - это куда? Если "обратно" - это "на середину", то например такая:
Или такая:
Запускать можно и без прописывания в конфиге:
Проверочное значение 10 поставил с запасом, чтобы работало наверняка (с учетом возможной неточности определения текущей позиции) - тут можно ставить в принципе любое от 5 до 49, но лучше избегать крайностей.
А пунту я ненавижу и не использую с тех самых пор, как познакомился с ней (лет надцать назад).
А "обратно" - это куда? Если "обратно" - это "на середину", то например такая:
Код: Выделить всё
sp_switch5=set_separator(# > 10 ? 5 : 50)Код: Выделить всё
sp_switch5=set_separator(5), separator(# > 10) | tcm(909)Код: Выделить всё
TCFS2.exe /ef "set_separator(5), separator(# > 10) | tcm(909)"
Последний раз редактировалось MVV Вт апр 26, 2011 12:16, всего редактировалось 1 раз.
MVV
Ты из каких-то личных соображений не захотел дать ссылку на уже описанный способ в тематическом топике? Только не пиши, что забыл...
Ты из каких-то личных соображений не захотел дать ссылку на уже описанный способ в тематическом топике? Только не пиши, что забыл...
Чем найти? У меня на поиск ушло 7-10 сек. Ты за это время успел пост написать? Сомневаюсь...MVV писал(а):написать оказалось куда быстрее.
И, кстати, мой вариант именно то, что требуется, с определением активной панели и возвратом в случае, если разделитель не на середине. И не надо никаких дополнительных команд и вызовов с /ef...