AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: База знаний и проекты
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.02.2005, 08:33   #1  
chi is offline
chi
Участник
 
80 / 13 (1) ++
Регистрация: 21.01.2004
? Изменение контекстного меню
Здравствуйте.
Подскажите, плиз, можно ли добавить в контекстное меню (вызываемое щелчком по правой кнопке), свой элемент? Причем чтобы он был всегда: неважно где я щелкаю - на формах, в репозитарии и т.д.
Спасибо.
Старый 18.02.2005, 09:36   #2  
Nikolaich is offline
Nikolaich
Участник
 
238 / 10 (1) +
Регистрация: 15.12.2004
Насчет всегда и везде - это я не знаю.
А на форме можно, перекройте метод context() у контрола
Старый 18.02.2005, 09:39   #3  
simply2double is offline
simply2double
Участник
Аватар для simply2double
 
556 / 19 (2) ++
Регистрация: 08.09.2004
Адрес: alfa cen
Как сделать свое всплывающее меню довольно доходчиво показано в тестовой форме
tutorial_PopupMenu. Посмотри, может это тебе поможет.
А вот глобально поерекрыть все Popupmenu мне кажеться невозможно... может я и ошибаюсь конечно.
Старый 22.02.2005, 08:56   #4  
chi is offline
chi
Участник
 
80 / 13 (1) ++
Регистрация: 21.01.2004
Изменение контекстного меню для форм
А возможно ли добавить свой элемент в контекстное меню, чтобы он был доступен на всех формах?
Старый 22.02.2005, 11:26   #5  
leshy is offline
leshy
Участник
 
118 / 11 (1) +
Регистрация: 23.02.2004
Адрес: Киев
Теоретически, это возможно. Посмотрите класс SysContextMenu и соответствующее меню sysContextMenu.
Старый 16.05.2005, 14:43   #6  
Bars is offline
Bars
Участник
Аватар для Bars
 
312 / 14 (1) ++
Регистрация: 04.03.2005
Адрес: Москва
Можно какой нибудь пример....


Как добавить пункт в контекстное меню на текущей форме... Как к нему обратиться..

Т.Е. нужно добавить пункт в контекстное меню на данной конкретной форме...
Старый 16.05.2005, 14:53   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
tutorial_PopupMenu
tutorial_windowSpot

И вообще
http://axapta.mazzy.ru/kb/gettingstarted/
__________________
полезное на axForum, github, vk, coub.
Старый 16.05.2005, 15:12   #8  
Bars is offline
Bars
Участник
Аватар для Bars
 
312 / 14 (1) ++
Регистрация: 04.03.2005
Адрес: Москва
?
ясно...это все уже смотрено....
Может просто не заметил где....

Вопрос в том как обратиться именно к системному контекстному меню, а не формировать его заново
Старый 16.05.2005, 15:21   #9  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано Bars
Вопрос в том как обратиться именно к системному контекстному меню, а не формировать его заново
а... извините.
Ну, если интересует расширенное поведение, то SysHelp
__________________
полезное на axForum, github, vk, coub.
Старый 16.05.2005, 17:10   #10  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Ты хочешь сказать, что SysHelp строит контекстное меню?

Насколько я поминаю вопрос, он заключается в том, какой класс строит контекстное меню. В туториалах ничего полезного нет - там они просто перекрыли контекстное меню своим. А вот найти, где генериться нормальное - мне лично оказалось не под силу. Я пробовал менять / ставить брекпоинты в SysContexMenu, но никаких видимых результатов не было, и в дебагер я не проваливался. Даже удивительно

А проблема такая есть: допустим, если хочеться убрать пункт, например, "Перейти к основной таблице" или хотя бы "Паспорт записи".

С Уважением,
Георгий
Старый 16.05.2005, 17:18   #11  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Цитата:
Изначально опубликовано George Nordic
Я пробовал менять / ставить брекпоинты в SysContexMenu, но никаких видимых результатов не было, и в дебагер я не проваливался. Даже удивительно
SysContextMenu - это контекстное меню, которое генерится при правом клике на элементе AOT. Причем даже не само это контекстное меню, а только его ветка Add-Ins. Так что, ничего удивительного

Цитата:
Изначально опубликовано George Nordic
А проблема такая есть: допустим, если хочеться убрать пункт, например, "Перейти к основной таблице" или хотя бы "Паспорт записи".
Попробуйте правами запретить все, что нельзя делать.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 16.05.2005, 17:35   #12  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано George Nordic
Ты хочешь сказать, что SysHelp строит контекстное меню?
Строит.
Попробуй на "тулбаре" в SysHelp
__________________
полезное на axForum, github, vk, coub.
Старый 17.05.2005, 10:00   #13  
Bars is offline
Bars
Участник
Аватар для Bars
 
312 / 14 (1) ++
Регистрация: 04.03.2005
Адрес: Москва
? Посмотрел
Там опять строится свое контекстное меню, заново, при перекрытии метода context()


... Вот смотрите правой мышкой кликаю на гриде выдается стандартное контекстное меню:
-Найти
-Фильтр
--------------
Сортировка по возрастанию....
......

Хочу в это меню вставить разделитель а потом свой пункт,
это возможно?
Старый 17.05.2005, 10:08   #14  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
См. форму SysHelp, метод showContextMenu().

Вызывается, если в форме онлайн-справки нажать на правую кнопку в районе тулбара.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 17.05.2005, 10:21   #15  
Bars is offline
Bars
Участник
Аватар для Bars
 
312 / 14 (1) ++
Регистрация: 04.03.2005
Адрес: Москва
Thumbs up Получилось
Есть, спасибо...

Извиняюсь в очереднгой раз за слепоту.
Старый 17.05.2005, 11:14   #16  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Цитата:
Хочу в это меню вставить разделитель а потом свой пункт
Добавьте свой MenyItem в меню SysContextMenu

C Уважением,
Георгий.
Старый 17.05.2005, 11:17   #17  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Георгий, это не то меню.

SysContextMenu вызывается при выборе пункта Add-Ins в контекстном меню, вызванном для элемента AOT.

Чтобы добавить пункт в контекстное меню на форме нужно перекрывать метод showContextMenu() у контрола, а затем работать с классом PopupMenu.
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 17.05.2005, 11:29   #18  
George Nordic is offline
George Nordic
Модератор
Аватар для George Nordic
Злыдни
 
4,479 / 1250 (50) ++++++++
Регистрация: 17.12.2003
Адрес: Moscow
Записей в блоге: 9
Не, я в том смысле, что есль хоть куда-то в контекстное меню надо встроить свой MenuItem, то, в принципе, пойдет...

С Уважением,
Георгий.
Старый 17.05.2005, 12:14   #19  
Bars is offline
Bars
Участник
Аватар для Bars
 
312 / 14 (1) ++
Регистрация: 04.03.2005
Адрес: Москва
Может таким же как я новичкам поможет , чтобы долго не лазить....
Все взято из SysHelp.

PHP код:
public int showContextMenu(int _menuHandle)
{

    
PopupMenu popupMenu PopupMenu::create(_menuHandle,this.hWnd());

    
int test;
    
int selection;
    ;

    
popupMenu.insertBreak();

    
test        popupMenu.insertItem("Test");
    
selection   popupMenu.draw();

    switch (
selection)
    {
    case 
test:
             
Info("Test");
             return 
0;
     default:
            return 
selection;
    }

return 
selection;
 } 
Спасибо еще раз за помощь всем )))
Старый 17.05.2005, 12:48   #20  
Bars is offline
Bars
Участник
Аватар для Bars
 
312 / 14 (1) ++
Регистрация: 04.03.2005
Адрес: Москва
не хочу засорять форум мелкими вопросами, а идей почти нет....

взял из документации код

PHP код:
form ClassFactory.FormRunClass(formstr(CustTable));

form.init();

form.run(); 
а он ошибку пишет
Цитата:
Аргумент args несовместим с требуемым типом
Теги
download, faq, законченный пример, контекстное меню, полезное, программно, хак

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
"Зависание" при вызове SysSetupForm из контекстного меню slava DAX: Администрирование 3 12.09.2012 16:13
Переименование контекстного меню NetBus DAX: Программирование 2 17.02.2009 18:37
"Классическое" главное меню в 4.0... glibs DAX: База знаний и проекты 3 11.04.2007 09:58
Как получить TreeNode выделенного узла в АОТ при вызове контекстного меню? Beast-L DAX: Программирование 6 22.01.2007 16:28
Работа с главным меню в Axapta Alexey DAX: Программирование 0 04.01.2002 23:31

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 15:38.