Недостаточно рейтинга для добавления отрицательного голоса. Шаблон будет скрыт из ваших результатов поиска.
Комментарии
tormozit #1, ред. 02 сентября 2024 08:39
Хотелось бы отображать число результатов прямо в заголовке окна "Поиск". Метод ТурбоКонф.УстановитьЗаголовокТекущегоОкна() не действует на это окно почему то. Точнее в свойствах UIAutomation заголовок меняется, но само окно его не применяет.
@bolsun Может быть эту фичу в целом сделаешь сам в Турбоконфе без правки АПИ?
0
tormozit #2, ред. 01 сентября 2024 12:07
Если делать добавку в заголовок этого окна через АПИ, то тогда нужен метод рисования поверх аналогично тому, как ты кнопку "Замена" сюда выводишь. В заголовке кажется будет проще, т.к. только X и Y в пикселях нужны относительно левого верхнего угла окна. Например можно назвать новый метод УстановитьТекстПоверхОкна(Текст, X, Y), который будет максимум один текст выводить поверх текущего окна.
0
tormozit #3, ред. 01 сентября 2024 12:23
Пока сделал через ПоказатьПодсказку() , но она слишком много внимания привлекает, т.к. постоянно смешается под каретку и быстро скрывается (мигает).
0
bolsun #4, ред. 01 сентября 2024 18:05
(1) tormozit, УстановитьЗаголовокТекущегоОкна() не будет работать с дочерними окнами 1С, т.к отображаемый на форме заголовок в них - ненастоящий. Платформа сама рисует окна. Настоящее окно - только главное окно конфигуратора, там заголовок менять можно.
0
tormozit #5, 01 сентября 2024 18:03
(4) bolsun, Хорошо бы об этом написать в описании метода =)
0
bolsun #6, ред. 01 сентября 2024 18:32
(3) tormozit, если делать такую встроенную реализацию, то тогда можно развить идею. Сделать кнопку с динамическим текстом, которая к тому же будет открывать окно ТурбоПоиска по клику, если нужно.
0
tormozit #7, ред. 01 сентября 2024 18:35
(6) bolsun, да, логично. Так факт наличия ТурбоПоиска станет намного более заметным, чтобы его быстрее находили новые пользователи и не забывали старые. Вот только в таком виде "ТурбоПоиск(11") не все сразу могут понять смысл числа. Может лучше "ТурбоПоиск (найдено 11)"?
1
tormozit #8, 01 сентября 2024 18:54
На всякий случай отмечу, что при добавлении этого индикатора важно учесть, что это окно может открываться и не из текстового документа. Поэтому я использовал такое условие
Если Истина
И ЗаголовокОкна = "Поиск"
И Не ТурбоКонф.НайтиЭлементПоИмени("По текущей колонке", "флажок")
Тогда
Текущие флаги в окне еще не учитываются, интересует общая надежность реализации.
0
tormozit #11, ред. 01 сентября 2024 23:04
Вроде работает. Но параллельно работает и мой поиск, который находит больше результатов и похоже мой ищет правильнее. Вот пример в Ссылка скрыта ищем слово "Элемент". Мой поиск и Notepad++ находят 41 результат. А твой (турбо) поиск - 36.
0
bolsun #12, 01 сентября 2024 23:39
(11) tormozit, понял. Я вывожу количество строк, в которых есть вхождения. А не количество вхождений. В одной строке может быть больше 1 вхождения.
0
tormozit #13, ред. 02 сентября 2024 08:29
Еще надо сделать блокировку поиска при длине искомой строки менее 3-х символов. В этом случае предлагаю показывать нечисловой символ "(найдено *)".
0
bolsun #14, 02 сентября 2024 12:10
(11) tormozit,
счетчик исправил
флажки теперь поддерживаются
поиск начинается от 1 символа
Флажки работают. Для пустой строки по-прежнему выглядит пугающе
Снова предлагаю сделать (13).
И важно сделать (8), чтобы не обманывать пользователя.
0
bolsun #16, 02 сентября 2024 12:50
(15) tormozit, баг просто. Должно быть (найдено 0)
(13) не подойдет, это уже не Турбопоиск, который должен моментально искать и обновляться. И непонятно, что это за звездочка.
0
tormozit #17, ред. 02 сентября 2024 12:57
(16) bolsun, модуль может быть очень большим, например несколько миллионов символов. Поиск в нем любой частой буквы выдаст огромное число результатов. Это будет большая и бесполезная работа для процессора. Звездочка (или любой другой спецсимвол) будет непонятна до первого раза как она превратится в число. А это случится крайне быстро.
Я недостаточно продумал сценарии поиска спецсимволов и коротких слов целиком. Например хочу найти одиночный символ &/?/@/! или слово "Сч" целиком. Поэтому возможно все таки твой вариант (поиска с первого символа) более удобен с учетом этих случаев.
Постоянная большая нагрузка на логический процессор при рисовании индикатора поверх окна. Она намного больше чем сам поиск дает.
0
tormozit #20, 02 сентября 2024 18:21
Еще хорошо бы убрать выравнивание по центру, т.к. из-за это вся надпись двигается по горизонтали в процессе ввода искомой строки. Это крадет внимание. Сделай выравнивание по левому краю. Да, так будет менее красиво.
(21) bolsun, Проверил. Нагрузка на процессор ушла.
0
tormozit #23, ред. 03 сентября 2024 08:02
Еще плохо что при повторном открытии окна "Поиск" в нем сразу отображается старое количество, которое было последним рассчитано в прошлое его открытие. Пока оно не рассчитано первый раз, лучше показывать символ неопределенного количества.
#1, ред. 02 сентября 2024 08:39
Хотелось бы отображать число результатов прямо в заголовке окна "Поиск". Метод ТурбоКонф.УстановитьЗаголовокТекущегоОкна() не действует на это окно почему то. Точнее в свойствах UIAutomation заголовок меняется, но само окно его не применяет.
@bolsun Может быть эту фичу в целом сделаешь сам в Турбоконфе без правки АПИ?
#2, ред. 01 сентября 2024 12:07
Если делать добавку в заголовок этого окна через АПИ, то тогда нужен метод рисования поверх аналогично тому, как ты кнопку "Замена" сюда выводишь. В заголовке кажется будет проще, т.к. только X и Y в пикселях нужны относительно левого верхнего угла окна. Например можно назвать новый метод УстановитьТекстПоверхОкна(Текст, X, Y), который будет максимум один текст выводить поверх текущего окна.
#3, ред. 01 сентября 2024 12:23
Пока сделал через ПоказатьПодсказку() , но она слишком много внимания привлекает, т.к. постоянно смешается под каретку и быстро скрывается (мигает).
#4, ред. 01 сентября 2024 18:05
(1) tormozit, УстановитьЗаголовокТекущегоОкна() не будет работать с дочерними окнами 1С, т.к отображаемый на форме заголовок в них - ненастоящий. Платформа сама рисует окна. Настоящее окно - только главное окно конфигуратора, там заголовок менять можно.
#5, 01 сентября 2024 18:03
(4) bolsun, Хорошо бы об этом написать в описании метода =)
#6, ред. 01 сентября 2024 18:32
(3) tormozit, если делать такую встроенную реализацию, то тогда можно развить идею. Сделать кнопку с динамическим текстом, которая к тому же будет открывать окно ТурбоПоиска по клику, если нужно.
#7, ред. 01 сентября 2024 18:35
(6) bolsun, да, логично. Так факт наличия ТурбоПоиска станет намного более заметным, чтобы его быстрее находили новые пользователи и не забывали старые. Вот только в таком виде "ТурбоПоиск(11") не все сразу могут понять смысл числа. Может лучше "ТурбоПоиск (найдено 11)"?
#8, 01 сентября 2024 18:54
На всякий случай отмечу, что при добавлении этого индикатора важно учесть, что это окно может открываться и не из текстового документа. Поэтому я использовал такое условие
#9, 01 сентября 2024 21:50
У меня вроде работает
https://disk.yandex.ru/d/XKCz9ijzgtoO1w
(8) tormozit, эта проверка еще не реализована
#10, 01 сентября 2024 22:43
Текущие флаги в окне еще не учитываются, интересует общая надежность реализации.
#11, ред. 01 сентября 2024 23:04
Вроде работает. Но параллельно работает и мой поиск, который находит больше результатов и похоже мой ищет правильнее. Вот пример в Ссылка скрыта ищем слово "Элемент". Мой поиск и Notepad++ находят 41 результат. А твой (турбо) поиск - 36.
#12, 01 сентября 2024 23:39
(11) tormozit, понял. Я вывожу количество строк, в которых есть вхождения. А не количество вхождений. В одной строке может быть больше 1 вхождения.
#13, ред. 02 сентября 2024 08:29
Еще надо сделать блокировку поиска при длине искомой строки менее 3-х символов. В этом случае предлагаю показывать нечисловой символ "(найдено *)".
#14, 02 сентября 2024 12:10
(11) tormozit,
счетчик исправил
флажки теперь поддерживаются
поиск начинается от 1 символа
https://disk.yandex.ru/d/XKCz9ijzgtoO1w
#15, ред. 02 сентября 2024 12:45
Флажки работают. Для пустой строки по-прежнему выглядит пугающе
Снова предлагаю сделать (13).
И важно сделать (8), чтобы не обманывать пользователя.
#16, 02 сентября 2024 12:50
(15) tormozit, баг просто. Должно быть (найдено 0)
(13) не подойдет, это уже не Турбопоиск, который должен моментально искать и обновляться. И непонятно, что это за звездочка.
#17, ред. 02 сентября 2024 12:57
(16) bolsun, модуль может быть очень большим, например несколько миллионов символов. Поиск в нем любой частой буквы выдаст огромное число результатов. Это будет большая и бесполезная работа для процессора. Звездочка (или любой другой спецсимвол) будет непонятна до первого раза как она превратится в число. А это случится крайне быстро.
#18, 02 сентября 2024 15:31
https://disk.yandex.ru/d/XKCz9ijzgtoO1w
Добавлено (8) и (13)
#19, ред. 02 сентября 2024 15:47
Теперь все работает как я хотел.
Немного беспокоят
#20, 02 сентября 2024 18:21
Еще хорошо бы убрать выравнивание по центру, т.к. из-за это вся надпись двигается по горизонтали в процессе ввода искомой строки. Это крадет внимание. Сделай выравнивание по левому краю. Да, так будет менее красиво.
#21, 02 сентября 2024 20:50
(19) tormozit, оптимизировал
https://disk.yandex.ru/d/XKCz9ijzgtoO1w
#22, 02 сентября 2024 22:26
(21) bolsun, Проверил. Нагрузка на процессор ушла.
#23, ред. 03 сентября 2024 08:02
Еще плохо что при повторном открытии окна "Поиск" в нем сразу отображается старое количество, которое было последним рассчитано в прошлое его открытие. Пока оно не рассчитано первый раз, лучше показывать символ неопределенного количества.
#24, 04 сентября 2024 18:20
(23) tormozit, исправил
6.2.9013.35583
https://disk.yandex.ru/d/ay0Wg6IBTsxSxg
#25, 04 сентября 2024 21:59
Исправлены некоторые артефакты отображения кнопки
6.2.9013.43083
https://disk.yandex.ru/d/ay0Wg6IBTsxSxg
#26, ред. 06 сентября 2024 07:35
В окно "Замена" нужен аналогичный индикатор. Не забудь учесть переключатель Блок/Файл.