ПанельМеню.ПриОткрытии (MenuBar.MenuOpening) Событие

Использование

Чтение и запись.

Значение

Тип: Действие (Action).

Возвращает или задает код для события перед открытием меню.

Примечание

При возникновении события аргумент НовыйПунктМеню (NewMenuBarItem) приравнивается к значению аргумента ТекущийПунктМеню (CurrentMenu). Если в коде обработчика события значение аргумента события Отмена (Cancel) установить в значение Истина, то можно будет подменить пункт меню на другой по своему выбору.

Аргументы события

НовыйПунктМеню (NewMenuBarItem) Пункт меню для подмены.
Отмена (Cancel) Возвращает или задает значение, указывающее, следует ли отменить событие.
Отправитель (Sender) Возвращает источник (объект) последнего события.
Параметр (Parameter) Возвращает объект, заданный при установке обработчика события, для передачи в обработчик события.
ТекущийПунктМеню (CurrentMenu) Текущий родитель пункта меню.

Пример

_Меню.ПриОткрытии = ТФ.Действие(ЭтотОбъект, "_Меню_ПриОткрытии");
Полный пример кода


Перем ТФ, _Файл, _Справка, Окно1, _Поиск, Выбранный; Процедура ПриОткрытии() Экспорт Окно1.Текст = " |Открывайте попеременно меню Файл и меню Справка |"; КонецПроцедуры Процедура _Меню_ПриОткрытии() Экспорт АргументыСобытия = ТФ.АргументыСобытия; Окно1.Текст = " |_Меню_ПриОткрытии " + ТекущаяУниверсальнаяДатаВМиллисекундах() + " |Отмена = " + АргументыСобытия.Отмена + " |ТекущийПунктМеню Заголовок = " + АргументыСобытия.ТекущийПунктМеню.Заголовок + " |НовыйПунктМеню Заголовок = " + АргументыСобытия.НовыйПунктМеню.Заголовок + " |"; АргументыСобытия.Отмена = Истина; КонецПроцедуры ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug\OneScriptTerminalGui.dll"); ТФ = Новый ТерминалФормыДляОдноСкрипта(); Окно1 = ТФ.Окно("Результат действий"); Окно1.Игрек = ТФ.Позиция.Абсолютно(10); Окно1.Заполнить(); ТФ.Верхний.Добавить(Окно1); ТФ.Верхний.Текст = " | | | | | | | |Открывайте попеременно меню Файл и меню Справка"; _Меню = ТФ.ПанельМеню(); ТФ.Верхний.Добавить(_Меню); _Файл = ТФ.ПунктМеню(); _Файл.Заголовок = "Файл"; _Меню.ПодМеню.Добавить(_Файл); _Открыть = ТФ.ЭлементМеню(); _Открыть.Заголовок = "Открыть"; _Файл.Элементы.Добавить(_Открыть); _Выход = ТФ.ЭлементМеню(); _Выход.Заголовок = "Выход"; _Файл.Элементы.Добавить(_Выход); _Поиск = ТФ.ПунктМеню(); _Поиск.Заголовок = "Поиск"; _Меню.ПодМеню.Добавить(_Поиск); _Найти = ТФ.ЭлементМеню(); _Найти.Заголовок = "Найти"; _Поиск.Элементы.Добавить(_Найти); _Справка = ТФ.ПунктМеню(); _Справка.Заголовок = "Справка"; _Меню.ПодМеню.Добавить(_Справка); _ОПрограмме = ТФ.ЭлементМеню(); _ОПрограмме.Заголовок = "ОПрограмме"; _Справка.Элементы.Добавить(_ОПрограмме); _Меню.ПриОткрытии = ТФ.Действие(ЭтотОбъект, "_Меню_ПриОткрытии"); ТФ.ПриОткрытии = ТФ.Действие(ЭтотОбъект, "ПриОткрытии"); ТФ.Запуск();

Тестовый код


Перем ТФ, _Файл, _Справка, Окно1, _Поиск, Выбранный, _Меню, ПриОткрытии; Процедура ПриОткрытии() Экспорт Окно1.Текст = " |Открывайте попеременно меню Файл и меню Справка |"; _Меню.Открыть(); КонецПроцедуры Процедура _Меню_ПриОткрытии() Экспорт АргументыСобытия = ТФ.АргументыСобытия; Окно1.Текст = " |_Меню_ПриОткрытии " + ТекущаяУниверсальнаяДатаВМиллисекундах() + " |Отмена = " + АргументыСобытия.Отмена + " |ТекущийПунктМеню Заголовок = " + АргументыСобытия.ТекущийПунктМеню.Заголовок + " |НовыйПунктМеню Заголовок = " + АргументыСобытия.НовыйПунктМеню.Заголовок + " |"; АргументыСобытия.Отмена = Истина; ПриОткрытии = Истина; ТФ.ТаймерНачатьИОстановить(ЭтотОбъект, "ТаймерТик", 2000); КонецПроцедуры Процедура ТаймерТик() Экспорт ТФ.ОтправитьКлавишуКонсоли(ТФ.КлавишиКонсоли.Escape); ТФ.Завершить(); КонецПроцедуры ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug\OneScriptTerminalGui.dll"); ТФ = Новый ТерминалФормыДляОдноСкрипта(); Окно1 = ТФ.Окно("Результат действий"); Окно1.Игрек = ТФ.Позиция.Абсолютно(10); Окно1.Заполнить(); ТФ.Верхний.Добавить(Окно1); ТФ.Верхний.Текст = " | | | | | |Открывайте попеременно меню Файл и меню Справка |Затем закройте приложение."; _Меню = ТФ.ПанельМеню(); ТФ.Верхний.Добавить(_Меню); _Файл = ТФ.ПунктМеню(); _Файл.Заголовок = "Файл"; _Меню.ПодМеню.Добавить(_Файл); _Открыть = ТФ.ЭлементМеню(); _Открыть.Заголовок = "Открыть"; _Файл.Элементы.Добавить(_Открыть); _Выход = ТФ.ЭлементМеню(); _Выход.Заголовок = "Выход"; _Файл.Элементы.Добавить(_Выход); _Поиск = ТФ.ПунктМеню(); _Поиск.Заголовок = "Поиск"; _Меню.ПодМеню.Добавить(_Поиск); _Найти = ТФ.ЭлементМеню(); _Найти.Заголовок = "Найти"; _Поиск.Элементы.Добавить(_Найти); _Справка = ТФ.ПунктМеню(); _Справка.Заголовок = "Справка"; _Меню.ПодМеню.Добавить(_Справка); _ОПрограмме = ТФ.ЭлементМеню(); _ОПрограмме.Заголовок = "ОПрограмме"; _Справка.Элементы.Добавить(_ОПрограмме); _Меню.ПриОткрытии = ТФ.Действие(ЭтотОбъект, "_Меню_ПриОткрытии"); ТФ.ПриОткрытии = ТФ.Действие(ЭтотОбъект, "ПриОткрытии"); ТФ.Запуск(); Сообщить(?( ПриОткрытии , "", "!!! ") + "ПанельМеню.ПриОткрытии (MenuBar.MenuOpening) Событие" + " " + ТекущаяДата() + Символы.ПС);

Смотрите также

Библиотека OneScriptTerminalGui