[RWidjets] Динамические панели, меню программы v.1.4.0

14.01.15

Разработка - Работа с интерфейсом

Компонента позволяет добавлять новые пункты к основному меню программы. Вы можете добавлять в меню команды, разделители или выпадающее меню, создавая, таким образом, иерархическое меню. При выборе пункта меню выполняется указанный вами скрипт на внутреннем языке 1С. Вы можете делать пункты неактивными, ставить пометку, удалять и добавлять новые пункты меню во время работы программы без изменения интерфейса пользователя в конфигураторе.
Также вы можете перехватывать, отменять или переопределять команды стандартного меню, панелей инструментов, горячих клавиш.

Скачать файлы

Наименование Файл Версия Размер
RWidjets v.1.4.0
.1177363119 82,75Kb
1812
.1177363119 82,75Kb 1812 Скачать

v.1.4.0
+ Новые объекты для динамического создания панелей инструментов (тулбаров)

См. также

1С:Фото номенклатуры 7.7 - решение для работы с фотографиями номенклатуры в 1С:7.7 (включая формат PNG)

Работа с интерфейсом Логистика, склад и ТМЦ Платформа 1С v7.7 1С:Торговля и склад 7.7 Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Решение для разработчика и конечного пользователя для работы с фотографиями номенклатуры: систематизация, хранение, отображение, а также выгрузка на Яндекс-Диск и FTP (кроме версии лайт). Поддерживаются графические форматы: bmp, jpg, gif, tiff, а также png - не поддерживаемый штатными средствами 1С. Выполнено без использования внешних компонент (кроме функции выгрузки на FTP). Поставляется как в виде пустой конфигурации с набором объектов и модулей для работы с фото, так и в виде обновления к 1С:Торговля и склад 7.7. Выполнено в двух версиях: "полная" и "лайт".

5000 руб.

18.10.2022    5131    1    45    

3

WebЦвета для 1с77 FormEx

Инструментарий разработчика Работа с интерфейсом Платформа 1С v7.7 Абонемент ($m)

Обработка с фрагментами кода для программного использования набора цветов из коллекции WebЦвета 1с версии 8+ в 1с версии 77. Требуется предварительное подключение сторонней библиотеки FormEх. Будет полезно программистам 1с 77, 1с 8. Да и вообще при программировании на любом языке при потребности использовать коллекцию цветов WebЦвета.

1 стартмани

30.03.2022    4527    2    igor7777    4    

5

К привязкам элементов форм (1С 7.7, FormEx)

Работа с интерфейсом Платформа 1С v7.7 Конфигурации 1cv7 Бесплатно (free)

Публикация имеет цель обратить внимание на возможность улучшения интерфейса.

15.12.2021    4449    62    Cерый    13    

6

Выбор цвета для 1С 7.7

Работа с интерфейсом Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Простая и удобная внешняя обработка для выбора цвета без применения внешних компонент.

1 стартмани

09.06.2020    7003    3    vap_pig    5    

3

Производственный календарь для 1С 7.7

Учет рабочего времени Работа с интерфейсом Платформа 1С v7.7 Конфигурации 1cv7 Россия Абонемент ($m)

Обработка производственного календаря с возможностью импорта и экспорта xls для 1С 7.7 (7.70.027) без изменения конфигурации.

1 стартмани

18.09.2019    12559    5    Jill    8    

3

Альтернативная обработка "Выбор периода"

Работа с интерфейсом Оперативный учет 7.7 1С:Торговля и склад 7.7 Абонемент ($m)

Альтернативная обработка ввода периода для 1С 7.7.

1 стартмани

27.03.2019    6580    3    v.a.n-    11    

2

Несколько табличных частей в 1С:7.7 - это просто

Работа с интерфейсом Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

При программировании на платформе V7 достаточно часто возникает задача создать несколько табличных частей документа (или справочника). Традиционно эта задача имеет несколько решений..

1 стартмани

01.05.2018    22398    27    Gkmy    11    

5
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. 18.01.07 17:19 Сейчас в теме
Проверил сейчас на тестовой базе. Действительно, ошибок, отмеченных мной раньше, не возникает. Так что включу в рабочую и буду проверять на ней. Большое спасибо.
2. VV 18.01.07 17:57 Сейчас в теме
В FormEx не умеет делать то же самое? Я еще не смотрел, правда, чем отличается?
3. bsa1968 64 11.01.07 17:50 Сейчас в теме
У меня была ошибка, подобная Serg11 - вылет 1С при обновлении меню (у меня также всем проставлена галочка "Отключить меню Операции", правда работаю на DBF-версии, релиз. 25). В новой версии этого не наблюдается, спасибо автору!
4. andrewalexk 11.01.07 18:21 Сейчас в теме
:)
согласен с большинством - это прорыв в менюпостроении , ждем обновлений
5. Robert 721 11.01.07 14:20 Сейчас в теме
v.1.3.3
Исправил ошибки. Персональная просьба к Serg11 проверить у себя.
10. Kapitan911 304 31.10.06 19:05 Сейчас в теме
При повторном открытии:
мнВсе=мнМеню.ДобавитьМеню("Все", "&ВСЕ");
{C:\МЕНЮ ТЕСТ.ERT(5)}: Элемент с идентификатором Все уже существует на этом уровне меню.
6. support 4484 31.10.06 08:10 Сейчас в теме
Судя по описанию круто! Давно такого ждали! А vtools в этой части очень глючил.
7. wolfsoft 2421 31.10.06 12:42 Сейчас в теме
В тестовой обработке надо заменить
глМеню.Обновить();
мнМеню.Обновить();
Интересная штука, вот только надо подумать, куда ее можно применить?...
8. wolfsoft 2421 31.10.06 12:44 Сейчас в теме
В тестовой обработке надо заменить
глМеню.Обновить();
НА
мнМеню.Обновить();
:)
9. Robert 721 31.10.06 13:39 Сейчас в теме
Заменил.
Применить можно для организации переключения интерфейсов для пользователя.
Или, как в моем случае, для совмещения интерфейсов. В стандартной конфигурации предусмотрена связь пользователь-интерфейс один к одному. Я же делаю связь роль-интерфейс. Каждый пользователь в один момент может выполнять несколько ролей. Интерфейсы нескольких ролей совмещаются. Получается связь один ко многим.
11. Robert 721 31.10.06 19:34 Сейчас в теме
Если вы хотите добавить в меню второй пункт ВСЕ, то используйте другой идентификатор.
мнВсе=мнМеню.ДобавитьМеню("Все2", "&ВСЕ");
Если вы хотите, чтобы тестовый пример корректно работал при повтоном запуске, а в меню оставался бы один пункт ВСЕ, то добавте строку
мнМеню.УдалитьВсе();
12. 01.11.06 00:34 Сейчас в теме
Супер, видел как один чел написал "такооое" чтобы реализовать вот это для управления пунктами меню для пользователей, а сдесь все просто, автору респект огромный.
13. Robert 721 01.11.06 00:53 Сейчас в теме
В качестве респекта нажмите ссылочку Спасибо автору! (+1 рейтинг) выше.
14. JohnyDeath 301 09.11.06 14:12 Сейчас в теме
15. vasilykushnir 63 10.11.06 13:31 Сейчас в теме
16. wolfsoft 2421 11.11.06 18:10 Сейчас в теме
+ 1 :)

2 robert: Убедил, полезная вешь! Особенно понравилась возможность из статьи http://infostart.ru/articles/?id=132&ref=987 (Управление списком пользователей из режима 1С:Предприятие).

Вопрос.

В статье приведен следующий код:
Код
мнМеню=СоздатьОбъект("Меню");
мнСервис=мнМеню.ПолучитьСистемное("Сервис");
мнСервис.ДобавитьРазделитель("Разд1");
мнСервис.ДобавитьКоманду("Плзв", "Пользователи", "#32854");
мнМеню.Обновить();
Показать полностью

Откуда извлечена информация о том, что именно код "#32854" соответствует данной команде? ;) А то может там еще что полезное есть :)
17. Robert 721 11.11.06 20:22 Сейчас в теме
Все просто. Вставь в глобальный модуль такой код.
Код
Процедура ПриПолученииКоманды(пКоманда, пЗаблокироватьКоманду)
   Сообщить("Идентификатор команды: "+пКоманда);
КонецПроцедуры
Показать полностью

Запускай 1С. При выборе пункта меню, нажатии на кнопку панели инструментов, нажатии горячей клавиши получишь код команды. Этот код потом можно использовать как написано в статье или так:
Код
мнМеню=СоздатьОбъект("Меню");
мнМеню.ПослатьКоманду("32854");
Показать полностью

А можно в цикле отправлять все команды подряд и смотреть что будет.
18. пользователь 12.11.06 16:47
Сообщение было скрыто модератором.
...
19. пользователь 12.11.06 16:48
Сообщение было скрыто модератором.
...
20. wolfsoft 2421 12.11.06 21:47 Сейчас в теме
2 robert: Это в режиме "Предприятие" сработает, а вот откуда ты узнал код для команды из режима "Конфигуратор"? ;)
21. Robert 721 12.11.06 22:37 Сейчас в теме
Maniac
Посмотри FormEx. Там есть процедуры перехвата движений мышью и нажатия клавиш. И работа с открытыми окнами кажется тоже.
Фишка моей разработки не в перехвате нажатия клавиши как такового, а перехвата команды, которая передается Предприятию при нажатии клавиш. Например, при нажатии Ctrl+N, выборе в меню Файл - Новый, нажатии на панели кнопочки с листочком передается одна и таже команда. Ее можно перехватить и предпринять свои действия и отменить.
wolfsoft
Программа то одна, только работает она в разных режимах. И одна и таже команда в разных режимах имеет один код. Например, Файл-Новый имеет один CommandID в любом режиме. И даже в любой программе, написанной на MFC. А то, что команда открытия окна Пользователи срабатывает в режиме Предприятие, я наткнулся случайно. ;)
22. wolfsoft 2421 13.11.06 20:17 Сейчас в теме
2 robert:
> А то, что команда открытия окна Пользователи срабатывает в режиме Предприятие, я наткнулся случайно. ;)

Понятно. (мечтательно) Вот бы "наткнуться случайно" еще на какие-нибудь команды из Конфигуратора... :)
23. logarifm 1116 14.11.06 09:07 Сейчас в теме
Чего-то я не догнал ,а хде же открытие списка создания пользователей!!! Где оно!!!
24. logarifm 1116 14.11.06 09:19 Сейчас в теме
Сорри разобрался спс) Суперная фича! Я просто не спал блин!
25. Strange Device 307 17.11.06 10:35 Сейчас в теме
Класс (+1)!!! А не собираешься ли реализовать возможность построения панелей инструменов?
26. Robert 721 17.11.06 12:21 Сейчас в теме
Собираюсь в следующей версии.
27. пользователь 17.11.06 22:57
Сообщение было скрыто модератором.
...
28. Robert 721 18.11.06 14:49 Сейчас в теме
Maniac
Не совсем так. RWidjets не предоставляет готовое решение для такой задачи. RWidjets это средство, инструмент решения подобной задачи.
На данный момент, возможно сделать загрузку интерфейсов как в восьмерке, но только в части меню. Панели инструментов остаются как есть. Поэтому я не считаю пока такую задачу решаемой на 100%. Сделаю загрузку панелей, тогда напишу как и что делать для этого.
29. pr_kristar 23.11.06 10:15 Сейчас в теме
30. YouRock 23.11.06 12:29 Сейчас в теме
А свои панели на форму, напр. для стандартизации управления списками, таблицами, открытия меню подчиненных и связанных справочников. Типа 8-ки. Ответный удар по 8-ке.
+1
31. Robert 721 23.11.06 14:22 Сейчас в теме
YouRock
В планах
1. панели главного окна, замена стандартным
2. панели на форме, замена стандартным
3. панели в любое место формы для контекстной привязки к элементам формы
Сначала п.1, потом остальное.
32. AlexT 11.12.06 10:20 Сейчас в теме
У меня вылетает при запуске 1С в терминале при количестве пользователей больше 1 с ошибкой "Память не может быть Read". Причем может и запуститься , но у 3-4 пользователей максимум. При одном пользователе работает нормально. У кого-нибудь подобное наблюдалось?
33. albiel 14.12.06 22:53 Сейчас в теме
Есть конфликтики с 1С++ (v. 2.0.2.2) и vtools (v. 1.0.0.1) . Обязательно нужно загружать компонету после 1С++, но до vtools. Так, вроде, работает, но длительно ещё не тестировал. Вещь нужная, если стабильно фунциклировать будет.
34. Chieftain 94 20.12.06 11:07 Сейчас в теме
У меня пункты меню в v.1.3.2 почему-то обрезаются по ширине. Мож че не догоняю?
35. 20.12.06 13:21 Сейчас в теме
Классная вещь, только у меня работает с ошибкой вот такой:
Если в свойствах интерфейса пользователя поставить галочку в пункте "отключить меню "Операции", то 1С вываливается при запуске на самой последней команде - меню.обновить() (я вставил создание меню в процедуру "ПриНачалеРаботыСистемы"). Если галочку снять, все ок :-(. А у меня ряду пользователей это меню нужно не включать.
36. 20.12.06 13:49 Сейчас в теме
Да, если это важно - установлена бухгалтерия 7.70.473 под SQL, релиз 025.
37. 20.12.06 15:20 Сейчас в теме
Еще одна проблема. Если запустить 1С, и, пока она еще не загрузилась, переключиться на другое окно, к примеру браузер, загрузка 1С также вываливается с сообщением "программа 1cv7s вызвала ошибку RWIDJETS.DLL...", как и в предыдущей ошибке, описанной мной. От того, в формате DBF или SQL установка, это не зависит...
38. Chieftain 94 21.12.06 14:11 Сейчас в теме
Когда ждать новую версию?
39. Robert 721 21.12.06 16:32 Сейчас в теме
Всем спасибо за сообщения об ошибках. Новая версия будет в январе.
У меня пункты меню в v.1.3.2 почему-то обрезаются по ширине.
Если используете 1С++, то сначала загружайте 1cpp.dll, потом RWidjets.dll
1С++ блокирует обработку некоторых событий. Скорей всего дело в этом.
40. RinGo 91 05.02.07 14:02 Сейчас в теме
>Запускай 1С. При выборе пункта меню, нажатии на кнопку панели инструментов, нажатии горячей клавиши получишь код команды.
>А можно в цикле отправлять все команды подряд и смотреть что будет.

А есть ли возможность узнать внутренний код команды (например: #53359) в момент создания пункта динамического меню командами мнМен.Добавить(пТип, пИднт, пЗаголовок, пСкрипт) или мнМеню.ДобавитьКоманду(пИднт, пЗаголовок, пСкрипт)? Или это принципиально невозможно? Мне бы хотелось не выбирая пункты динамического меню "ручками" программно установить соответствие
пИднт <--> пКоманда...
41. vasilykushnir 63 31.01.07 14:08 Сейчас в теме
>А то, что команда открытия окна Пользователи срабатывает в режиме Предприятие, я наткнулся случайно. ;)

А вот это пожалуй, главная изюминка.!
42. vasilykushnir 63 31.01.07 14:22 Сейчас в теме
>Я же делаю связь роль-интерфейс. Каждый пользователь в один момент может выполнять несколько ролей. Интерфейсы нескольких ролей совмещаются. Получается связь один ко многим.

А подробнее можно? Лучше, пожалуй, по мылу Vasily_Cherkassy@mail.ru (так наверное будет оперативнее). Меня это очень заитерисовало вот в каком плане: было два юзера (разные интерфейсы и разные наборы прав). Одного сократили, а второго подгрузили его обязанностями. Два раза входить юзеру в 1С напряг, а мне напряг выискивать блох, т.е. чем наборы и интерфейсы отличаются и объединять всю эту муру. Мне показалось, что твой подход сможет помочь мне.
lero@riz; +1 Ответить
43. Mulder_1 15.03.07 21:19 Сейчас в теме
Обработка супер !
вот тока у меня проблемка возникла ...
не перехватывает нажатие на INS в журнале документов ... т.е. не перехватывает "горячую клавишу " в журнале документов

причем пробовал в абсолютно пустой базе.. не работает .. нажание на кнопки в меню перехватываются , а вот INS нет ...
44. ted 20.03.07 10:50 Сейчас в теме
Большое спасибо автору за труды!
+ поставил ;)

При использовании Процедуры ПриПолученииКоманды(пКоманда, пЗаблокироватьКоманду)
с ключом пЗаблокироватьКоманду=1;
в журнале документов иногда все равно проскакивает стандартное окно выбора документа.
Соглашусь с предыдущим собеседником неплохо было бы сделать перехват команды с клавиатуры,
можна было бы избавиться от одной лишней библиотеки.
45. artbear 1447 13.04.07 10:36 Сейчас в теме
http://www.1cpp.ru/forum/YaBB.pl?num=1162249850/70#70
Есть один баг -
При загруженном Rwidjets падает 1с при использовании БыстрыйПоискВСписке
(есть на инфостарте или с помощью моего класса)

Я смотрел код RWidjets по представленным исходникам, в момент вызова svcsvc.dll, когда открыто окно этой компоненты, работает RWidjets и вылетает на методе MenuHook из-за того, что метод ::GetMainFrame() возвращает NULL и дальше идет обращение к этому NULL, что ведет к исключению.

Но, я все-таки нашел временный выход :)
Нужно в MenuHook сделать небольшую вставку
LRESULT CALLBACK MenuHook(int code, WPARAM wp, LPARAM lp)
{
// artur
if (!GetMainFrame())
return ::CallNextHookEx(hMenuHook, code, wp, lp);
// end

и быстрый поиск начинает работать, т.е. RWidjets перестает конфликтовать с svcsvc.dll

Роберт, сможешь поправить свою ВК ?
ЗЫ или выложи, плиз, исходники
ЗЫ Роберт, а можно получить последние исходники ВК?
хотел поотлаживать версию 1.33, но в ней некоторых методов, внесенных позже, нету
86. mashinist 6 22.11.13 18:31 Сейчас в теме
в системное меню типа Файл можно добавить пункты
А вот в обычное (которое в конфигураторе) не получается
мнСправочник = мнМеню.Получить("Справочники");
{D:\МЕНЮ ТЕСТ.ERT(45)}: Нет элемента меню с идентификатором Справочники на этом уровне меню.

Или я что-то не так понимаю?
46. Robert 721 24.04.07 01:17 Сейчас в теме
v.1.3.5
Просьба потестировать, кому интересно.
Новые возможности нашли отражение в тестовой обработке.
47. lustin 24.04.07 11:47 Сейчас в теме
еще вопрос:
"Будут ли обрабатываться события глобального модуля в классе Перехватчик ( artbear )? "
48. artbear 1447 24.04.07 13:31 Сейчас в теме
Да, события RWidjets без проблем перехватываются Перехватчиком.
Я специально проверял.
49. andrewalexk 04.05.07 11:28 Сейчас в теме
:)
а у меня глюк
если при открытии отключаю 4 системных меню
то при закрытии ПОСЛЕ выхода из программы пишет ошибку:
...
Подпись ошибки
AppName: 1cv7s.exe AppVer: 7.70.0.25 ModName: unknown
ModVer: 0.0.0.0 Offset: 1000a800
...
з.ы.
даже если при закрытии обнулять объект "Меню"..
з.з.ы
1c v7.7, r.25, sql
50. Valet 56 25.06.07 09:16 Сейчас в теме
Вопрос не совсем связанный с компонентой, но навеян именно ею.
Как добавить полный журнал, если он не определен в конфигурации.
Точнее как программно открыть полный журнал документов.
Пардон если оффтоп.
PS. А компонента супер.
51. AnyBody 30.08.07 16:09 Сейчас в теме
RWidjets v.1.3.5 на втором уровне вложенного меню, при показе меню обрезается по ширмне. То же эффект и в демонстрационной обработке из всей длины названия справочника показывется 4 буквы. Что делать?
52. AnyBody 31.08.07 12:55 Сейчас в теме
ОШИБКА: RWidjets v.1.3.5 "дурит ширина" при отображении.
Способ воспроизведения: В гл.модуле в процедуре ПриНачалеРаботыСистемы" сначала пишем
ОткрытьФорму("Отчет",,КаталогИБ()+"\ExtForms\Test.ert");// любая внешняя обработка
затем
ЗагрузитьВнешнююКомпоненту("RWidjets.dll");
глЯЯМеню=СоздатьОбъект("Меню");
и тд.
Все меню начинем "дурить".
Если сначала "строим меню", а потом ОткрытьФорму ..., то все работает.
53. Chieftain 94 07.09.07 10:31 Сейчас в теме
ОШИБКА: RWidjets v.1.3.5 "дурит ширина" при отображении.
Может это то же самое, что и у меня было?
У меня пункты меню в v.1.3.2 почему-то обрезаются по ширине.
Если используете 1С++, то сначала загружайте 1cpp.dll, потом RWidjets.dll
1С++ блокирует обработку некоторых событий. Скорей всего дело в этом.
54. vladnet 360 06.10.07 11:17 Сейчас в теме
Компонента отличная! Но нашел 2 глюка.

Команда ЗагрузитьИнтерфейс на моей конфе завешивает 1с ку, пробовал по разному, формировал меню заново с помощью мастера 1с. Код следующий:
лМеню=СоздатьОбъект("Меню");
лМеню.ЗагрузитьИнтерфейс("Администратор");

Так же не работает RMsgWindow, при выводе сообщения мелькает экран и компонента сразу закрывается.
55. adept2007 19.11.07 08:09 Сейчас в теме
Компонента очень нужная.
Но у меня почему-то не работает метод УдалитьВсе()
1С 25 версия
Пробовал загружать только ее, без других компонент, тоже самое.
А добавление в меню команды Пользователи работает. Прикольно! :)
Автору респект
56. Abadonna 3958 14.01.08 18:13 Сейчас в теме
57. lero@riz 26.01.08 20:04 Сейчас в теме
Я же делаю связь роль-интерфейс. Каждый пользователь в один момент может выполнять несколько ролей. Интерфейсы нескольких ролей совмещаются. Получается связь один ко многим.

А подробнее можно? Лучше, пожалуй, по мылу Vasily_Cherkassy@mail.ru (так наверное будет оперативнее). Меня это очень заитерисовало вот в каком плане: было два юзера (разные интерфейсы и разные наборы прав). Одного сократили, а второго подгрузили его обязанностями. Два раза входить юзеру в 1С напряг, а мне напряг выискивать блох, т.е. чем наборы и интерфейсы отличаются и объединять всю эту муру. Мне показалось, что твой подход сможет помочь мне.


хм зачем на мыло?!!! лучше всем рассказать
зы мне тоже интересно
58. andrey995 27.01.08 22:21 Сейчас в теме
Спасибо за компоненту !
По поводу панелей : есть ли в планах сделать возможным всатвлять новую панель не с новой строки а рядом с уже существующей, чтобы экономить место ? или, может быть, возможно прикрепить новые кнопки к существующему установленному в конфигураторе или системному тулбару ?
59. Robert 721 05.02.08 18:43 Сейчас в теме
Есть такие планы. Вернусь из отпуска, продолжу работу над компонентой.
60. AklexK 22 07.02.08 19:02 Сейчас в теме
Классная библиотека
Свой набор бы картинок для toolbar подключать!
61. Robert 721 08.02.08 11:20 Сейчас в теме
Ну так и подключай. УстановитьКартинку (или как то так метод называется, у меня нет под рукой) в который можно передать стандартный 1с-овский объект Картинка. А его можно хоть из файла формировать, хоть из библиотеки картинок.
62. AklexK 22 08.02.08 14:06 Сейчас в теме
ОК попробую. Спасибо
Еще есть оно, при наведении на кнопку тоолбара хотелось бы tooltiptext, т.е. всплывающую подсказку
63. quick 583 11.03.08 16:23 Сейчас в теме
Может избавлюсь наконец таки от кучи интерфейсов.
64. mikukrnet 181 07.04.08 14:46 Сейчас в теме
А в обычное подменю можно вставлять свои элементы, или только в системные?
65. dimm73 09.04.08 10:04 Сейчас в теме
Посмотрел описание и пример , но так и не вьехал как мне подменить вызов стандартной истории списка справочника на свою обработку (при нажатии на стандартную кнопку панели "показать историю"). Зачем мне это я писал
http://www.1cpp.ru/forum/YaBB.pl?num=1207652965/0#10

если можно пример применительно к моему случаю
66. dimm73 09.04.08 11:21 Сейчас в теме
пробовал
ПриПолученииКоманды()

перехватывает все события главного меню, но меню формы списка справочника - не перехватывает, жаль.

Что интересно, если открыть меню на элементе справочника в в списке правой клавишей, (там теже пункты меню что и в шапке формы списка ) то перехват работает. Значит просто недоделано.
67. cabat 04.09.08 14:26 Сейчас в теме
Автору респект! Полностью перешел на использование динамических меню + панели инструментов!
Есть одна хотелка, которой не хватает для полного счастья - подсказки к кнопкам панели инструментов, есть шансы?
68. pvv1979 09.09.08 15:04 Сейчас в теме
Хорошая компонента. Уже практически полностью переделал систему формирования интерфейсов. Только вот в конце натолкнулся на следующий затык. Дело в том, что по задумке пользователь может переключаться между интерфейсами, которые ему доступны. Соответственно с каждым интерфейсом идет свой набо тулбаров. Но если с меню все ОК, т.е. очищаем и формируем новое меню, то с панелями я так и не понял как же их удалить или хотя бы очистить. В итоге при перещелкивании интерфейса добавляется новая панель, которая привязана уже к новому интерфейсу и остается старая. Не нашел ни одной команды, чтобы можно было программно закрыть тулбар.Можно это как-то обойти?
69. pvv1979 09.09.08 15:41 Сейчас в теме
Вопрос снимается как глупый. Перечитывал еще раз помощь. Как говорится, много думал. До этого не обращал внимания что метод Показать() для тулбара опциональный. Так что,эта хотелка вполне решаема. Еще раз автору огромное спасибо.
70. aou1c 12 17.09.08 10:46 Сейчас в теме
Не перехватывает нажатия пиктограмм не в главном окне, например в журнале
из конт. меню перехватывает, а пиктограммы вверху окна - нет
71. dnp 29.09.08 10:28 Сейчас в теме
Хочу добавить пунктов в Меню-Отчеты (он не динамический и не системный...), это возможно?
72. Automatik 914 09.12.08 14:52 Сейчас в теме
Процедура ПриПолученииКоманды(пКоманда, пЗаблокироватьКоманду)
Открыта форма журнала документов.
Если кнопками управлять (например нажать Del), событие отлавливается.
Если мышкой нажать на кнопку панели инструментов окна для удаления, не отлавливается!
Спасибо, нужная вещь. Ждем новую версию :)
73. buzzzard 51 12.01.09 02:26 Сейчас в теме
Глюк с шириной пункта меню так и присутствует.
Возможно ли от него как-то избавится?

Пока вывожу внизу пустое подменю с заголовком из тучи пробелов.
Но как-то это не комильфо.....
74. MrDen 434 12.01.09 23:32 Сейчас в теме
75. MrDen 434 14.01.09 03:03 Сейчас в теме
Опробовал замечательно, грузить можно и в обработках, но если идет обработка с загрузкой ВК запускается первой то как следствие первого запуска обработки, причем любой, переключение фокуса главного окна и кривое отображение меню по ширине и событий нет но результат зарузки соответственно 1 лечится только после выгрузки dll решено 2 мя способами 1 стартануть любую другую обработку и после запустить эту или 2 не паримся загружаем и создаем объекты после загрузки FormEx в процедуре ПослеОткрытия()
2 момент на тулбаре отчетливо видна черта над кнопками знакомый прикол MFC порядок расположения кнопок не по центру окно класса ToolbarWindow32 убирается сдвигом на вышесказанного окна 1 пиксел вверх, но при отцеплении от родителького окна тут же появляется
Прицепил отцепленный тулбар с измененными стилями окна на форму с включенным режимом сохранения настройки получается прикольно но тулбар onTop в комплекте с формексом можно добиться результата например вычитывания картинки области скрытие тулбара наложения при деактивации окна но мне кажется не всем такие методы понравятся ;-) хотя прикольно
Очень жаль что разработка не продолжается
1с 7.7.0.27
76. buzzzard 51 31.03.09 17:59 Сейчас в теме
Видимо лечится, но не всегда. Я так и не победил.
77. simply1 6 31.10.09 15:52 Сейчас в теме
Устанавливаю картинку пункту меню из набора иконок. Вместо иконки - черный квадрат. Так должно быть? :?:
78. zorg65 16.09.11 00:30 Сейчас в теме
79. Cy6er 10.10.11 15:31 Сейчас в теме
Идея весьма хороша. Жаль, что без исходников.
80. varelchik 27.12.11 10:51 Сейчас в теме
Взываю к автору компоненты!
Роберт а нельзя ли вернуть назад в ПриПолученииКоманды() перехват нажатия кнопок на Панели Инструментов Форм Списков Справочников Журнало и Документов.
photocritic; zsi_uk; +2 Ответить
81. zsi_uk 14.01.12 16:44 Сейчас в теме
Присоединяюсь к мольбе, верните перехват нажатия кнопок на Панели Инструментов Форм Списков Справочников Журналов и Документов. Без этого мало смысла в компоненте.
82. navi 23.02.12 18:26 Сейчас в теме
А можно ли убрать полноостью все менюшки? нужно для терминала сбора данных, у него слишком маленькое окно (240*320) поэтому любая понедь крадет место
83. sournk 27 11.12.12 11:01 Сейчас в теме
Можно ли создать свою панель инструментов не в главном окне, а окне формы справочника?
84. Ёпрст 1063 11.12.12 11:05 Сейчас в теме
(83) можно, но только в старых версиях вк.
85. sournk 27 11.12.12 14:03 Сейчас в теме
(84) Где можно скачать такую версию и описание не подскажешь?
87. cargobird 306 27.02.15 10:24 Сейчас в теме
Добрый день! Подскажите пожалуйста, для 8.2 есть что-то подобное, очень надо заменить реакцию на кнопку "Временная блокировка"...
88. baydal 04.07.16 16:37 Сейчас в теме
Не уверен, что автор еще читает эти комментарии, но все же напишу. Метод УдалитьВсе() оставляет висящим пустой пункт меню. Какой из них конкретно останется, почему-то зависит от того, какие пункты системного меню были отключены. При последующем обновлении меню в текущей сессии (хоть через загрузку интерфейса, хоть через добавление) этот пункт остается. Если проделать операцию несколько раз, он будет размножаться соответственно. Нажатие на нем подвешивает 1С. Интересно, у кого-то работает этот метод корректно?
89. VRP 270 10.07.18 14:37 Сейчас в теме
Автору респект. Жаль что проект "задвинули".
Нашел пренепреятнейшую вещь.
ЭлементМеню->УстановитьКартинку Параметр пКартинка - Тип: Число или Стандартный для 1С объект Картинка;
Так вот, Стандартный для 1С объект Картинка при чтении файлов коверкает картинки (режет палитру и прочая фигня). И по факту загрузить красивую 32-битную иконку или картинку не получиться. А в самой 1С все картинку 16 бит.
Полазил по исходникам RMenuItem.cpp на github и увидел проверку на AGREGATE_TYPE_1C
А можно как-то добавить проверку хотябы на IPicture? или WIA ImageFile?
тогда можно было бы не стандартной Картинкой загружать? а то инструмент классный есть но толку - 0.
И сорри, но самому подправить и скомпилить не судьба. delphi мое все.
90. DasIsFantastich 16 24.12.18 00:20 Сейчас в теме
Добавление кнопок к стандартным панелям инструментов не реализовано?
91. aldi.ivanovo 16.03.22 12:44 Сейчас в теме
Может кто нибудь подсказать. Использую ЗагрузитьИнтерфейс(пНазвание) для переключения между интерфейсами.
Все объекты типа справочники, документы, обработки и журналы документов из обновленного меню открываются, а пункты меню ведущие на внешние отчеты "Отчет.открытьвнешний" не отрабатывают, открывается диалоговое окно открытия файла. в чем может быть проблема?
Пробовал разные пути для ссылки на внешний отчет и относительный путь и абсолютный, результат одинаков.
Оставьте свое сообщение