Каким событием воспользоваться для поля ввода?

  • Автор темы anivaler
  • Дата начала
Статус
Закрыто для дальнейших ответов.
A

anivaler

Гость
#1
У меня есть поле ввода табличного поля. В нём имеется кнопка выбора. Я вешаю на него событие "Обработка выбора". Я обрабатываю два значения: текущее значение и выбранное значение поля ввода. Но это событие действует только когда я мышью нажимаю на кнопку выбора и выбираю значение из какого-нибудь списка.
Мне же нужно обрабатывать текущие и выбранные значения при вводе значения вручную. Возможно ли это и какие события мне подойдут?

PS:Смотрел события АвтоПодборТекста и ПриИзменении, но не знаю как вытянуть с их помощью текущие значения.
 

SeverBap

Well-Known Member
18.09.2007
451
0
#2
Что-то я не врубаюсь!!! Тебе надо редактировать ТаблицуЗначений???? Тогда на нее вешай процедурку ПриВыбореЗначенийВТаблице().
Код:
Процедура ПриВыбореЗначенийВТаблице()
Если ТаблицаДанных.КоличествоСтрок()>0 Тогда
ЗначениеРедактирования=ТаблицаДанных.ПолучитьЗначение(Таблицаданных.ТекущаяСтрока(),"ЗначениеДляРедактирования");
ВвестиЗначение(ЗначениеРедактирования,"Редактируем значениев таблице");
ТаблицаДанных.УстановитьЗначение(Таблицаданных.ТекущаяСтрока(),"ЗначениеДляРедактирования",ЗначениеРедактирования);
КонецЕсли;
КонецПроцедуры
Если же ты решил редактировать значение в таблице через поле на форме то тебе пригодится Предопределенная процедура "ПриНачалеВыбораЗначения(Идентификаторо,флаг)"
где идентификатор - это идентификатор реквизита элемента на форме с кем ты работаешь ... а флаг это обработка стандартног диалога ....
тоесть допустим:
есть таблицаДанных, есть поле (например которое будет отвечать за один столбец в ТаблицеДанных) с идентификатором Элемент -
делаем:
Код:
Процедура ПриНачалеВыбораЗначения(Идентификаторо,флаг)
Если Идентификаторо="Элемент" Тогда
Флаг=0; //ставим что будем сами редакт....
Если Таблицаданных.КоличествоСтрок()>0 Тогда
ЗначениеРедактирования=ТаблицаДанных.ПолучитьЗначение(Таблицаданных.ТекущаяСтрока(),"Элемент"); // где "Элемент" - это идентификатор столбца
ВвестиЗначение(ЗначениеРедактирования,"Редактируем значение".......);
Таблицаданных.УстановитьЗначение(Таблицаданных.ТекущаяСтрока(),"Элемент",ЗначениеРедактирования);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Да вот еще что можешь повесить на форме функцию для отображения в поля соответствующие данне (зависящее от строки в таблицеДанных)....

если что то я тут
Да пример писал для 7 ....
:)
 
A

anivaler

Гость
#4
Забыл сказать, что я в восьмерке программирую... Замолчал, потому что разобрался...Повесил Событие ПриИзменении()...Подошло...


Спасибо тебе за помощь!
 
Статус
Закрыто для дальнейших ответов.