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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.06.2002, 10:34   #1  
art is offline
art
Участник
 
46 / 10 (1) +
Регистрация: 11.06.2002
Адрес: Москва
? Класс Dialog
Можно ли используя этот класс создать диалог с таблицей или FormTreeControl?
Уж очень не хочется громоздить свои маленькие диалоги...
Старый 11.06.2002, 11:42   #2  
Dron AKA andy is offline
Dron AKA andy
Moderator
 
944 / 253 (10) ++++++
Регистрация: 27.03.2002
Адрес: Москва
Может быть, это поможет.
Я как-то раз вставлял в диалог FormRadioControl без использования ExtendedDataType (вроде как эти радиокнопки по-другому вставить в диалог не получается). Вот пример кода:

FormRadioControl rbc;
Dialog dialog = new Dialog("Test");
;
dialog.form().addControl(FormControlType::RADIOBUTTON, "RadioButton");
dialog.doInit(); // типа инита на форме
rbc = dialog.formRun().design().controlName("RadioButton");

и теперь можно делать с контролом все, что угодно, например, добавлять значения в список:
rbc.add("Value1");

а затем, как обычно,
if (dialog.run())
{
...
}
__________________
Андрей.
За это сообщение автора поблагодарили: sukhanchik (3), Gustav (5), Corkscrew (1), decoder (1), samolalex (2).
Старый 11.06.2002, 12:10   #3  
art is offline
art
Участник
 
46 / 10 (1) +
Регистрация: 11.06.2002
Адрес: Москва
?
Спасибо. С FormTreeControl тоже работает.

dialog.form().addControl(FormControlType::TREE, "Tree");


Можно ли к этому же диалогу прилепить Data Source?
Старый 20.12.2011, 10:45   #4  
computernik is offline
computernik
Участник
Аватар для computernik
 
31 / 16 (1) ++
Регистрация: 11.07.2011
Цитата:
Сообщение от Dron AKA andy Посмотреть сообщение
Может быть, это поможет.
Я как-то раз вставлял в диалог FormRadioControl без использования ExtendedDataType (вроде как эти радиокнопки по-другому вставить в диалог не получается). Вот пример кода:...
Люди, хелп, подскажите можно ли аналогичным образом прикрутить FormRadioButtom к диалогу если я наследуюсь от RunBase?

Последний раз редактировалось computernik; 20.12.2011 в 10:49.
Старый 20.12.2011, 10:50   #5  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,689 / 405 (17) +++++++
Регистрация: 23.03.2006
Цитата:
Сообщение от computernik Посмотреть сообщение
Люди, хелп, подскажите можно ли аналогичным образом прикрутить FormRadioButtom к диалогу если я наследуюсь от RunBase?
вы уже пробовали пример приведенный выше?
Старый 20.12.2011, 10:51   #6  
kornix is offline
kornix
MCP
MCBMSS
Злыдни
Ex AND Project
 
414 / 146 (5) +++++
Регистрация: 24.02.2009
Адрес: Санкт-Петербург
Если вы наследуетесь от RunBase - метод prompt откроет диалог, созданный в методе Dialog вашего класса.
Перекройте метод dialog() вашего класса и вставьте в него код приведенный Dron AKA andy (выше).
Старый 20.12.2011, 11:01   #7  
computernik is offline
computernik
Участник
Аватар для computernik
 
31 / 16 (1) ++
Регистрация: 11.07.2011
X++:
protected Object dialog(
    DialogRunbase       _dialog,
    boolean             _forceOnClient)
{
//    Object              ret;
    Dialog              ret;
    FormRadioControl    rbc;

    ret                 = super(_dialog, _forceOnClient);

    ret.form().addControl(FormControlType::RadioButton, "RadioButton");
    ret.doInit();
    rbc                 = ret.formRun().design().controlName("RadioButton");

    rbc.add("Value1");
    rbc.add("Value2");
    rbc.add("Value3");
    rbc.add("Value4");
    rbc.add("Value5");

    return ret;
}
почему не работает?
Старый 20.12.2011, 11:13   #8  
computernik is offline
computernik
Участник
Аватар для computernik
 
31 / 16 (1) ++
Регистрация: 11.07.2011
Почти разобрался. Все работает если невидим запрос. А вот если делаю его видимым, то RadioButton группируются справа формы причем половина скрыта под "выбор" и проч.
Старый 20.12.2011, 11:28   #9  
kvg6 is offline
kvg6
program-ёр
Аватар для kvg6
1C
 
160 / 81 (3) ++++
Регистрация: 27.09.2005
Адрес: Moscow forever
X++:
rbc.leftMode(FormLeft::LeftEdge);
добавьте
__________________
Становись лучше
За это сообщение автора поблагодарили: computernik (1).
Старый 20.12.2011, 12:15   #10  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,689 / 405 (17) +++++++
Регистрация: 23.03.2006
поместите контролл в группу
За это сообщение автора поблагодарили: computernik (1).
Старый 20.12.2011, 12:45   #11  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
На самом деле плохой подход, в общем случае, имхо. Будет работать только на клиенте.
Намного проще и надежнее создать свою форму в АОТ.
За это сообщение автора поблагодарили: Bega (1).
Старый 28.01.2013, 15:45   #12  
Отшельник is offline
Отшельник
Участник
 
38 / 11 (1) +
Регистрация: 15.06.2011
Работаю с диалоговым окном в
public class ReportRun extends ObjectRun
{
...
}

Хочу добавить RadioButton:

X++:
public Object dialog(Object _dialog)
{
    DialogRunbase dialog = _dialog;
    boolean ret;


    FormRadioControl rbc;

    ;
...

   dialog.form().addControl((FormControlType::RadioButton),"RadioButton");
    //dialog.doInit(); 
    rbc = dialog.formRun().design().controlName("RadioButton");
    rbc.add("Test 1");
    rbc.add("Test 2");
    rbc.add("Test 3");

}
Выдает ошибку:

Ошибка времени выполнения: FormControl Объект не инициализирован.

Что посоветуете?
__________________
Dynamics AX 2009 SP1, Rollup 5, SQL Server 2008
Хороший ученик во всем найдет себе учителя...
Старый 28.01.2013, 16:34   #13  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,429 / 1772 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
А зачем вы dialog.doInit() закоментировали?
Старый 28.01.2013, 17:37   #14  
Отшельник is offline
Отшельник
Участник
 
38 / 11 (1) +
Регистрация: 15.06.2011
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
А зачем вы dialog.doInit() закоментировали?
Я уже с коментом и без него пробовал. Ругается одинаково. Может не в том методе я это делаю?
__________________
Dynamics AX 2009 SP1, Rollup 5, SQL Server 2008
Хороший ученик во всем найдет себе учителя...
Старый 29.01.2013, 06:09   #15  
Player1 is offline
Player1
Участник
Самостоятельные клиенты AX
 
305 / 137 (5) +++++
Регистрация: 21.04.2008
X++:
public Object dialog(DialogRunbase _dialogRunbase)
DialogRunbase ret;
DialogField   DialogField;
FactureAction_RU action;  //Enum со свойством Style = radiobutton
;

ret = super(_dialogRunbase);
DialogField = dialog.addField(typeid(FactureAction_RU));
DialogField.value(action);
return ret;
За это сообщение автора поблагодарили: S.Kuskov (1), Отшельник (1).
Старый 31.01.2013, 10:05   #16  
Отшельник is offline
Отшельник
Участник
 
38 / 11 (1) +
Регистрация: 15.06.2011
Цитата:
Сообщение от Player1 Посмотреть сообщение
X++:
public Object dialog(DialogRunbase _dialogRunbase)
DialogRunbase ret;
DialogField   DialogField;
FactureAction_RU action;  //Enum со свойством Style = radiobutton
;

ret = super(_dialogRunbase);
DialogField = dialog.addField(typeid(FactureAction_RU));
DialogField.value(action);
return ret;

Спасибо! Отлично работает!
Сори, что не сразу ответил.
__________________
Dynamics AX 2009 SP1, Rollup 5, SQL Server 2008
Хороший ученик во всем найдет себе учителя...
Теги
dialog, radiobutton, tree

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Проблема с передачей контролов из формы в класс matew DAX: Программирование 0 28.04.2008 17:37
Kashperuk Ivan: 3 Dialog extensions Blog bot DAX Blogs 4 28.09.2007 18:56
Класс на сервере Eldar9x DAX: Программирование 1 06.09.2007 15:16
Fred Shen: Dialog screen events Blog bot DAX Blogs 0 28.10.2006 16:40
Mandatory field в Dialog axaLearner DAX: Программирование 4 02.11.2004 09:50
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 17:06.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.