Имя: Пароль:
1C
 
Не могу найти контекстное меню ЭлементаУправления "Поле ввода"
0 andrew231
 
31.10.14
14:50
День добрый!

Есть ТабличноеПоле на форме, на котором есть колонка типа Строка. У свойства ЭлементУправления установлено "ПолеВвода". Проблема заключается в том, что я не могу найти свойство "КонтекстноеМеню" У ЭлементаУправления. У обычного поля ввода есть. А у поля ввода табличного поля не могу найти. Причем нет и свойства АвтоконтекстноеМеню. Подскажите плиз где прячутся  эти свойства.
1 vicof
 
31.10.14
14:52
2 andrew231
 
31.10.14
14:56
(1) Мне не нужно контекстное меню Табличного Поля. Мне нужно контекстное меню Элемента управления Колонки Табличного поля. Простите, если запутал.
3 andrew231
 
31.10.14
15:03
4 andrew231
 
31.10.14
15:08
Если бы это было обычное поле ввода то:

ЭлементыФормы.ПолеВвода.КонтекстноеМеню = МоеМеню;
ЭлементыФормы.ПолеВвода.АвтоконтекстноеМеню = Ложь;

В полем ввода все ок.

А вот в случае с ТабличнымПолем:

ЭлементыФормы.ТабличноеПоле.ТекущаяКолонка.ЭлементУправления.КонтекстноеМеню = МоеМеню;

Ошибочка, мол нет такого свойства!
5 mikecool
 
31.10.14
15:09
(4) так может его там нет?
6 mikecool
 
31.10.14
15:10
а пкм на реквизите и "показать контекстное меню"?
7 andrew231
 
31.10.14
15:13
(5) надеюсь на то что оно там есть
(6) не нашел я такого и как оно мне поможет?
8 mikecool
 
31.10.14
15:16
(7) как поможет - не знаю, но есть у реквизита формы, если кликать на нем в дереве реквизитов
9 andrew231
 
31.10.14
15:16
очень нужно найти, прям горит;)
10 mikecool
 
31.10.14
15:17
(9) прямо интрига...
11 andrew231
 
31.10.14
15:20
(8) нет такого пункта здесь:

- Список элементов управления формы
- Вкладка "реквизиты" формы
12 vicof
 
31.10.14
15:21
(11) Колонка табличного поля не является элементом формы. Контекстное меню можно создавать только для элементов формы. Понял?
13 andrew231
 
31.10.14
15:23
(12) Это личное предположение или где то написано?
14 vicof
 
31.10.14
15:26
(13) Это выводы из синтакс-помощника.
15 andrew231
 
31.10.14
15:33
(14) в СП такого нет
16 vicof
 
31.10.14
15:47
(15) Я его так прочитал и перевожу на русский язык. Можешь поверить на слово, можешь дальше мучаться с контекстным меню у колонок.
17 andrew231
 
31.10.14
15:54
(16) Дело в том что я тоже его прочитал. Там написано,

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

Но это не имеет же отношение к сути моей задачи.
18 vicof
 
31.10.14
16:03
Читаем выше
"Свойство определяет, какое контекстное меню будет показано у элемента управления"
19 vicof
 
31.10.14
16:04
Колонка - это подэлемент управления, так сказать.
Ответь на вопрос, есть табличное поле и есть колонка, у них контекстные меню, ты тыкнул по колонке. Какое меню должно выскочить?
20 hhhh
 
31.10.14
16:10
(17) а там точно есть элемент управления в колонке? И точно задано поле ввода? Может флажок?
21 andrew231
 
31.10.14
16:11
если посмотреть на скрин который я приложил в (3) то можно увидеть что поле в режиме редактирования. И там вовсе не "стандартное" для табличного поля контекстное меню. Если открыть контекстное меню для именно табличного поля получим пункты "ДОбавить, Удалить итд"
22 andrew231
 
31.10.14
16:13
(21) И там вовсе не "стандартное" для табличного поля контекстное меню, я бы сказал там АвтоконтекстноеМеню, к которому я и хочу добраться ;)
23 andrew231
 
31.10.14
16:16
(20) неа. именно поле ввода иначе я бы получил ошибку здесь:

ЭлементыФормы.ТабличноеПоле.ТекущаяКолонка.ЭлементУправления
24 andrew231
 
31.10.14
16:19
(23) хотя могу ошибаться насчет ошибки, но точно проверено что при

ЭлементыФормы.ТабличноеПоле.ТекущаяКолонка.ЭлементУправления

возвращает ПолеВвода
25 vicof
 
31.10.14
16:22
(24) "ЭлементыФормы.ТабличноеПоле.ТекущаяКолонка.ЭлементУправления"
последний аргумент - посмотри, есть ли в реквизитах контестное меню или нет, и успокойся.
26 andrew231
 
31.10.14
16:27
ок, а может есть "внештатная" возможность "перехватить" и обработать событие нажатия правой кнопки мыши?
27 vicof
 
31.10.14
16:29
через WinAPI я думаю, есть
28 andrew231
 
31.10.14
16:31
(27) кто нибудь видел примеры в 1с?
29 vicof
 
31.10.14
16:40
(28) Может, ты поделишься своей тайной задачей, и тебе подскажут другой путь, более интересный и простой в реализации?
30 andrew231
 
31.10.14
16:50
(29) Делаю спел чекер, при наборе текста срабатывает процедура АвтоПодбор в которой выполняются 2 функции

1)проверка набранного текста. Функция возвращает список слов исправлений ошибочно введенного слова.

2) формирует контекстное меню с вариантами
31 andrew231
 
31.10.14
16:54
(30) при наличии ошибок подсвечивается индикатор ошибки (в виде кнопки выбора с картинкой этого поля ввода). При нажатии на кнопку первое ошибочное слово выделяется, при его исправлении из контекстного меню выделяется следующее слово.

Как то так ;)

Основная цель: внедрить проверку правописания, движения пользователя свести к минимуму
32 vicof
 
31.10.14
16:57
попробуй

ПолеВвода.ОкончаниеВводаТекста (TextBox.TextEditEnd)
ПолеВвода (TextBox)
ОкончаниеВводаТекста (TextEditEnd)
Синтаксис:

ОкончаниеВводаТекста(<Текст>, <Значение>, <СтандартнаяОбработка>)
Параметры:

<Текст>

Тип: Строка.
Строка текста, введенная в поле ввода.
<Значение>

Тип: Значение; СписокЗначений.
Параметр может содержать значение для размещения в поле ввода или список значений для последующего выбора одного из них и размещения в поле ввода.
Параметр заполняется списком значений для последующего выбора одного из них и размещения его в поле ввода. Если список содержит единственное значение система автоматически подставит его в поле ввода. Пометки элементов этого списка значений могут использоваться для отметки значений, соответствующих помеченным на удаление объектам. В том случае, если пользователь выберет одно из помеченных значений, система выдаст стандартное предупреждение о выборе помеченного на удаление объекта.
<СтандартнаяОбработка>

Тип: Булево.
В данный параметр передается признак выполнения стандартной (системной) обработки события. Если в теле процедуры-обработчика установить данному параметру значение Ложь, стандартная обработка события производиться не будет.
Значение по умолчанию: Истина
Описание:

Возникает при формировании значения по отредактированному тексту. Например, в момент перехода на другой элемент управления формы, при закрытии формы и т.д.
См. также:

ПолеВвода, событие АвтоПодборТекста
33 andrew231
 
31.10.14
17:12
(32) не совсем понимаю как мне это событие поможет сформировать контекстное меню
34 andrew231
 
31.10.14
17:22
(33) самый простой вариант: в ячейке тпбличного поля по кнопке выбора открывать модальную форму с полем ввода. и в этом поле ввода все проверять. Минус в том что это дополнительное действие которое придется делать пользователю. Наверно так и сделаю. Всем спасибо!
Независимо от того, куда вы едете — это в гору и против ветра!