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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.06.2006, 17:07   #1  
UGT is offline
UGT
Участник
 
45 / 10 (1) +
Регистрация: 08.06.2005
Господа, как получить доступ к Control'ам формы?
Есть форма Form1, из которой по нажатию кнопки запускаетсмя в модальном режиме другая форма - Form2. Как после закрытия формы Form2 я могу узнать, что пользователь ввел в TextBox, расположенный на Form2?
Старый 02.06.2006, 17:13   #2  
Yoil is offline
Yoil
NavAx
NavAx Club
Лучший по профессии 2017
Лучший по профессии 2009
 
1,574 / 70 (6) ++++
Регистрация: 20.11.2002
Адрес: Msk
Куда-нибудь запомнить.
Например, передать через SingleInstance - codeunit.
Или в табличку куда-нибудь записать.
Или в файл...
__________________
"Моей лошадке ядрышком полмордочки снесло..."
А.В.Суворов, письма к дочери
Старый 02.06.2006, 17:19   #3  
e-statik is offline
e-statik
Участник
 
102 / 11 (1) +
Регистрация: 06.07.2005
...В Form2 создать функции, возвращающие нужные значения.
В Form1 создать переменную типа Form2, в нужном месте вписать что-нить типа (открытие формы Form2):

Код:
IF Form2.RUNMODAL = ACTION::OK THEN BEGIN
  var1 := Form2.GET_Text1();
END;
Старый 02.06.2006, 17:24   #4  
Dzemon is offline
Dzemon
Moderator
 
1,247 / 12 (3) ++
Регистрация: 09.09.2004
Если форма вызывалась через переменную, то после ее закрытия она остается в памяти и можно позвать функцию, которая вернет из нее значения. Но перед вызовом форма должна сбрасываться через clear(Form).
Старый 19.06.2006, 17:26   #5  
Vavilon is offline
Vavilon
Участник
 
17 / 10 (1) +
Регистрация: 03.03.2006
А можно тут же вопрос по теме?
У меня есть форма, в ней - субформа. Надо в субформу, в триггер OnInsert передать содержимое TextBox'a основной формы. Написал на основной функцию, и в ЭТОЙ функции не могу получить значение из текстбокса! У него нет св-ва .Text для того чтобы выдрать текущее значение! Я в шоке. Может, просто не там смотрю (или не так?)
Старый 19.06.2006, 19:02   #6  
Yoil is offline
Yoil
NavAx
NavAx Club
Лучший по профессии 2017
Лучший по профессии 2009
 
1,574 / 70 (6) ++++
Регистрация: 20.11.2002
Адрес: Msk
Обращайтесь к переменной, которая является СоурсЕкспрешном для текстбокса.
__________________
"Моей лошадке ядрышком полмордочки снесло..."
А.В.Суворов, письма к дочери
Старый 20.06.2006, 14:25   #7  
Vavilon is offline
Vavilon
Участник
 
17 / 10 (1) +
Регистрация: 03.03.2006
Цитата:
Сообщение от Дуд Посмотреть сообщение
Обращайтесь к переменной, которая является СоурсЕкспрешном для текстбокса.
Не получается что-то.
Есть текстбокс. Есть для него св-во TableRelation. Выбирается значение из списка. В кач-ве SourceExpr прописана глобальная переменная. Создал ф-цию, которая берет значение этой переменной и возвращает. Вызываю эту функцию из другой формы (из субформы) - получаю нулевое значение... ЧТО я делаю не так, подскажите, пожалуйста.
Заранее спасибо
Старый 20.06.2006, 14:47   #8  
UGT is offline
UGT
Участник
 
45 / 10 (1) +
Регистрация: 08.06.2005
Вот полезные ссылки по этой теме:
http://www.mibuso.com/howtoinfo.asp?FileID=9&Type=howto
http://www.mibuso.com/howtoinfo.asp?FileID=7&Type=howto
Старый 20.06.2006, 14:51   #9  
Fordewind is offline
Fordewind
Участник
 
1,134 / 10 (3) +
Регистрация: 01.12.2005
2 Destroyer
А как вы вызываете эту функцию из сабформы? Ведь сабформа не может напрямую обратиться к текущей версии формы.
Сделайте наоборот. Сделайте функцию на Сабформе. В Сабформу передавайте переменную после изменения переменой в ТекстБоксе через CurrForm.SubFormName.SubFormFunction(Variable).

Цитата:
Сообщение от UGT Посмотреть сообщение
А зачем усложнять-то?
Ссылки хорошие, но тут не нужны.
Старый 21.06.2006, 15:29   #10  
Vavilon is offline
Vavilon
Участник
 
17 / 10 (1) +
Регистрация: 03.03.2006
Цитата:
Сообщение от Fordewind Посмотреть сообщение
А как вы вызываете эту функцию из сабформы? Ведь сабформа не может напрямую обратиться к текущей версии формы.
Не знал

Цитата:
Сообщение от Fordewind Посмотреть сообщение
Сделайте наоборот. Сделайте функцию на Сабформе. В Сабформу передавайте переменную после изменения переменой в ТекстБоксе через CurrForm.SubFormName.SubFormFunction(Variable).
Спасибо большое! Получилось!..
CurrForm.SubFormName.FORM.SubFormFunction(Variable) вот так только... А то поначалу в панику ужарился
Старый 21.06.2006, 15:34   #11  
Fordewind is offline
Fordewind
Участник
 
1,134 / 10 (3) +
Регистрация: 01.12.2005
Очепятка
 


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

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

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