|   |   | 
| 
 | v7: Переключение между окнами с помощью Formex | ☑ | ||
|---|---|---|---|---|
| 0
    
        jah1111 25.08.23✎ 13:10 | 
        Собственно, всегда использовал для сенсорных экранов такую обманку: 
 вешал на кнопку переключения окон код переключение= СоздатьОбъект("WScript.Shell"); переключение.SendKeys("^({TAB})"); но недавно заметил, что такая кнопка в форме ОБРАБОТКИ на сенсорном дисплее не работает. в форме документа работает, в форме журнала работает, а в форме обработки - кнопка нажимается, но ничего не происходит. если мышью нажать то переключает окно. В общем, нужен другой способ реализации программного переключения окон. курил Formex - ничего не нашел кроме метода НаПереднийПлан() но как его использовать для переключения окон пока не придумал. Если есть у кого хотя бы общие идеи - поделитесь | |||
| 1
    
        MWWRuza гуру 25.08.23✎ 14:52 | 
        Через "ВнешнееСобытие" в том окне где кнопочка(по этой кнопочке), и его обработку в том окне, которое должно вылезти НаПереднийПлан - ?     | |||
| 2
    
        Arbuz 25.08.23✎ 17:51 | 
        (0) > ничего не нашел кроме метода НаПереднийПлан()
 но как его использовать для переключения окон пока не придумал. Если есть у кого хотя бы общие идеи - поделитесь И в чём проблема? Сервис.СписокВсехОткрытыхОкон() и переключай какое надо. | |||
| 3
    
        Злопчинский 25.08.23✎ 18:40 | 
        хрень какая-то. Процесс явно построен криво.     | |||
| 4
    
        jah1111 26.08.23✎ 07:58 | 
        (3) уважаю Ваши принципы конструирования конфигураций, но попросили немного "многозадачности" :)     | |||
| 5
    
        jah1111 26.08.23✎ 07:59 | 
        (2) У меня какая-то старая документация     | |||
| 6
    
        jah1111 26.08.23✎ 08:10 | 
        (2) ну есть у меня список все окон
 задача научиться гонять их по кругу кнопкой ну ума не приложу как его использовать, ведь каждый раз когда 'открыть новое/закрыть старое' этот список меняется, и даже когда окно выходит на передний план список меняется все окна форм одинакового размера, все кнопки переключения окон в формах идентичны и имеют те же координаты. То есть, к примеру если открыто 5 форм, я нажимаю кнПереключить, и сразу же у меня по пальцем оказывается кнПереключить на следующей форме. И если я нажму так 5 раз, я должен вернуться в форму с которой начал. | |||
| 7
    
        Злопчинский 26.08.23✎ 11:06 | 
        (4) ну пусть переключаются в нужное окно тыканием мышкой.
 или какачя-то особая многозадачность у вас? | |||
| 8
    
        Злопчинский 26.08.23✎ 11:08 | 
        (4) надо посмотреть на многозадачность эту в конкретном применении к конкретной задаче где эта "многозадачность" потребовалась. может проще процесс перестроить...     | |||
| 9
    
        jah1111 26.08.23✎ 12:57 | 
        (7) ну так без мышки надо, на планшете
 конструкция следующая: разработан режим планшета, для выписки основных документов на сенсорном экране если режим планшета активирован - в центре внимания развернутая на весь экран форма типа общий Журнал по имени "Десктоп" красивая такая, увеличенная формексом, с кнопками отбора документов по типу, с кнопками для фильтрации документов, с кнопками для управления документами. ну там создание, открытие, удаление, печать, просмотр и т.п. Кнопки большие и удобные. из этой формы в двойным тапом по строке (ПриВыбореСтроки) или по кнопе "Открыть", открывается Форма обработки а в ней отображается документ, по которому собственно кликали. Форма большая и красивая, во весь экран планшета, адаптирована под ввод пальцами. Из нее можно редактировать сохранить и провести нужный документ. Внизу формы предусмотрена кнопка с домиком (Home) при нажатии которой на передний план выходит Окно формы "Журнал.Десктоп" (ну типа на рабочий стол возвращаемся), и кнопка с квадратиками внахлёст (ну как у андроида) которая должна листать окна по кругу. Вот ту кнопку я и делал эмуляцией контрл+таб, но в форме обработки эмуляцией почему-то не работает на сенсоре, только мышей. Сам не понимаю чем так форма обработки отличается. Такая же кнопка в форме журнала например срабатывает на ура при тыке пальцем. Идея в том, что у менеджера на голове могут быть одновременно 2-3 клиента. к примеру вот взвесили товар Андрею, записали строку в накладную, тут взвешивают Игорю - перелистнули на накладную Игоря - записали, опять Андрею взвешивают - опять переключились в его накладную. Сама форма обработки которая создает и редактирует документы прошла уже хороший срок испытания. | |||
| 10
    
        Злопчинский 27.08.23✎ 03:55 | 
        (9) Понятно. Примерно как и предполагал. Раком сделано. Почему раком - потому что тут так заведено (почему заведено - тоже понятно) ты документ, который никак не зависит от ПРОЦЕССА взвешивания (как пула задач на взвешивание), пытаешься натянуть (документ) на процесс. И получается херня. Этакий костыль. Поянтно, что подпереть 1-2-3 костылями может быть дешевле, чем сделать по уму. Работать "от документа" на планшете, который является по сути НОСИМЫМ инструментом для РЕГИСТРАЦИИ ВЫПОЛНЯЕМЫХ ОПЕРАЦИЙ (а не отражения уже сделанных операций в "посмертном" документе) - так себе идея. Но раз так сложилось и сделать норм проблематично - вполне себе вариант. С извращениями, конечно, но что делать... ССЗБ.     | |||
| 11
    
        Злопчинский 27.08.23✎ 04:04 | 
        Почему не попробовать журнал открывать только тогда КОГДА ОН НУЖЕН, а открытые документы держать в виде визуальных кнопок.
 вряд ли будет больше нескольих открытых доков (2-3-4), при правильном построении экрана планшета и форм документов (а форму документа на планшете можно эмулировать минимальным набором реквизитов для планшета в виде обработки) - места хватит с лихвой. даже если открытых доков много - всегда можно по тыку показать список открытых доков (в виде кнопок или иначе как надо красиво для планшета) и выбирать док тыком. . делал в свое время на планшете работу с заказом покупателя для путешествия менеджера с покупателем по шоуруму. там собственно и документа-то как такового на экране не было... Не пошло в продакшен, нахрен оказалось не нужно, потому что генерить хотелки - это одно, а связь хотелок с реальностью - "это другое" ;-) | |||
| 12
    
        Злопчинский 27.08.23✎ 04:11 | 
        (6) какое окно находится на переднем плане - это формексом тоже определяется.
 опять же ну крути окна из списка. даже если в списке есть неактуальная форма (закрыли документ) - можно "отловить" что форма не существует и пропускать/килять ее из списка. И даже при закрытии формы система сама будет удалять из списка в ПослеЗакрытия() или в асинхронном событии после закрытия формы. Если покопаться - думаю можно сделать без эмуляции клавы | |||
| 13
    
        jah1111 27.08.23✎ 11:34 | 
        (11) покачто выбор окон сделал выпадающим списком - большим шрифтом отображаются названия открытых окон. Можно пальцем тыкать и выбирать, и даже скролить если пальцем тянуть.
 но все-таки наверно гонять по кругу кнопкой было бы лучше, или может уже просто привычней | |||
| 14
    
        Злопчинский 27.08.23✎ 13:48 | 
        (13) ты бы еще галочки вкл/выкл и радиобаттоны сделал на планшете вдобавок к выпадающему списку ;-)     | |||
| 15
    
        Djelf 27.08.23✎ 15:00 | 
        (14) Если сделать на табличномПоле 1с++ это не очень сложно.
 Можно даже приоритеты ставить, правда не протянув влево/вправа, такое там нельзя, по тыкнув в опеределлную точку можно. И любые похожие баттоны в строке, была бы фантазия... | |||
| 16
    
        Злопчинский 27.08.23✎ 18:36 | 
        (15) не любите вы пользователей...     | |||
| 17
    
        АгентБезопасной Нацио 28.08.23✎ 08:02 | 
        (9) в формексе у объекта Сервис есть метод СписокВсехОткрытыхФорм(). У объекта Окна есть метод НаПереднийПлан() - для твоих целей того достаточно.
 Но я бы сделал ТЗ, в которой хранятся данные открытых документов. А в документе - кнопкой перезаполнял из нее (и сохранял в нее) все данные документа. Или динамически формировал закладки, при нажатии которых заполнял данные дока из соответсвующей строки ТЗ. | |||
| 18
    
        jah1111 29.08.23✎ 22:51 | 
        (14) а я бы на Вашем месте не язвил ;) Народу нравицца! (Кин-дза-дза) Реально персонал потестил - понравилось
 и галочки я делал в свое время большие и красивые и даже удобные в ПриНажатииЛевойКнопки() и через ПолучитьАтрибутПоКоординатам(х,у). Два рисунка с одинаковыми координатами на форме, получают видимость в зависимости от значения. Один рисунок отображает пустой чекбокс - 0, второй - с галочкой соотвественно 1. | |||
| 19
    
        jah1111 29.08.23✎ 22:52 | 
        (15) приблизительно так я и делал     | |||
| 20
    
        Злопчинский 29.08.23✎ 23:55 | 
        (18) народу нравицца что ни покажи если до этого не работали с нормальными фейсами ;-) или вообще бегали с бумагой ;-)
 Я как-то пробовал тыкать чекбоксы на 3-хдюймовом экране (такая складская система Бухта) - адский ад... | |||
| 21
    
        Злопчинский 30.08.23✎ 01:15 | 
        кстати, так и не нашел навскидку нормального решения чтобы, например, фейс с разрешением одного экрана нормально отображался/масштабировался для разрешения другого экрана...     | |||
| 22
    
        АгентБезопасной Нацио 30.08.23✎ 08:08 | 
        (21) Класс Привязки?     | |||
| 23
    
        Duke1C 30.08.23✎ 11:47 | 
        (21) Серёг, я ж тебе скидывал как-то функцию свою по "масштабизации"?
 Правда, после этого, я немного модернизировал функционал. Добавил еще шрифты масштабируемые, которые создаются при загрузке и используются в течении всего сеанса в различных формах. | |||
| 24
    
        Duke1C 30.08.23✎ 11:54 | 
        +23 Начал я это дело практиковать еще с самой первой обработки для ТСД, а у них разрешение 320х240 пикселей
 А потом появились "бесхозные" телефоны/планшеты + "голубозубые" сканеры к ним, что превращало их в тот же ТСД, но гораздо более дешёвый. А разрешение экрана у них у всех разное... А потом на РМК появились тачскрины... А у "старшего" персонала мониторы "дохренадюймовые"... | |||
| 25
    
        Злопчинский 30.08.23✎ 18:01 | 
        (23) кинь ещё раз e.meil@mail.ru     | |||
| 26
    
        Злопчинский 30.08.23✎ 18:03 | 
        (22) не только расоложение элементов, но и увеличение самих элементов вплоть до размера шрифтов для ТЗ и шрифтов для надписей     | |||
| 27
    
        Злопчинский 30.08.23✎ 18:04 | 
        (24) вот-вот... Как раз про это и речь     | |||
| 28
    
        Злопчинский 30.08.23✎ 18:04 | 
        (23) и как в итоге получилось? Работает адекватно?     | |||
| 29
    
        jah1111 01.09.23✎ 22:29 | 
        (25) и мне... tekilakaktys@gmail.com :) если не жалко
 с масштабированием конечно засада, но если речь идет про планшет 10,1 дюйма, там 90% экранов в одном соотношении. естественно, обработка получается не универсальная, но если на фирму покупают несколько планшетов, то тоже берут одинаковые, а там и подогнать можно | |||
| 30
    
        jah1111 01.09.23✎ 22:36 | 
        (26) думаю полюбому будет гдето чтото вылезать и расплываться какую функцию не напиши, ибо даже вручную подганять тяжело     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |