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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.04.2008, 01:48   #1  
Zoe is offline
Zoe
Участник
 
14 / 10 (1) +
Регистрация: 23.03.2008
Адрес: Санкт-Петербург
Использование caller в args
Здравствуйте!
Помогите, пожалуйста разобраться с взаимодействием дочерней и родительской формой через caller.

Есть главная форма Form1 с текстовым полем и кнопкой. При нажатии на кнопку вызывается форма Form2 с одной кнопкой, по нажатию на которую в текстовое поле формы Form1 должно записаться, например, "Привет Вася". Как это сделать?

Понятно, что в методе clicked кнопки Form1 код такой:
X++:
Args    args = new Args();
    FormRun formRun;
    ;
    args.name(formstr(Form2));
    args.caller(this.owner());

    formRun = classFactory.formRunClass(args);    
    formRun.init();
    formrun.run();
    formrun.wait();
Я так понимаю, надо в Form1 создать метод, например, SetText, который будет записывать "Привет Вася" в текстовое поле Form1 и этотд метод мы должны вызывать из обработчика нажатия на кнопку формы Form2. Но как то не получается. Помогите, пожалуйста.
Старый 21.04.2008, 03:23   #2  
StasD is offline
StasD
Участник
 
24 / 15 (1) ++
Регистрация: 10.09.2003
Адрес: Хабаровск
Если в Form1 есть метод setText, который устанавлиает значение поля, то
в обработчике нажатия кнопки Form2 надо написать следующее:
X++:
void clicked()
{
    object o;
    ;
    o = element.args().caller();
    o.setText("Привет Вяся");
}
Старый 21.04.2008, 11:08   #3  
DSPIC is offline
DSPIC
Боец
 
1,077 / 1243 (44) ++++++++
Регистрация: 11.04.2008
X++:
args.caller(this.owner());
обычно так:
X++:
args.caller(element);
Далее перед вызовом setText() из Form2 не помешает вставить проверку:
X++:
if (SysFormRun::hasMethod(o, identifierstr(setText))
    {
          o.setText("Привет Вяся")
    }
А если ещё правильней, то перед всем этим нужно проверить, есть ли element.args().caller() в Form2
Старый 23.04.2008, 12:18   #4  
Zoe is offline
Zoe
Участник
 
14 / 10 (1) +
Регистрация: 23.03.2008
Адрес: Санкт-Петербург
Спасибо огромное всем!!! Простите - раньше не могла ответить...
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Вызов метода element.args().caller().setOfficialsParams(.... Poleax DAX: Программирование 6 04.09.2008 19:49
args.dataset() и args.record().tableid - могут ли отличаться? gl00mie DAX: Программирование 5 06.08.2007 13:21
args.caller() и .dialog maximka DAX: Программирование 2 04.06.2007 13:27
args.caller() Кирилл DAX: Программирование 3 15.04.2004 12:06
args().caller() - ссылка puz DAX: Программирование 2 16.09.2003 12:49

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

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

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