|   |   | 
| 
 | как программно перейти в конец вводимой строки в поле ввода? | ☑ | ||
|---|---|---|---|---|
| 0
    
        kiwi 07.10.14✎ 16:57 | 
        В форме (обычной) есть поле ввода, в которое после неких манипуляций пользователя программа переходит по Этаформа.ТекущийЭлемент = ... Соответственно, значение в этом поле становится выделенным. Можно как-то сделать, чтобы курсор перешел в конец значения этого поля, т.е. как если бы пользователь нажал кнопку End?
 Заранее спасибо. | |||
| 1
    
        Ник второй 07.10.14✎ 16:59 | 
        нажми эту кнопку "end" программно     | |||
| 2
    
        kiwi 07.10.14✎ 17:07 | 
        (1) если с помощью vbscript, то не очень хотелось бы. Или есть вариант сделать это с помощью самой 1С?     | |||
| 3
    
        DmitrO 07.10.14✎ 17:11 | 
        УстановитьГраницыВыделения     | |||
| 4
    
        kiwi 07.10.14✎ 17:50 | 
        ...в общем, так и не осилил (     | |||
| 5
    
        kiwi 07.10.14✎ 17:59 | 
        По крайней мере, на однострочное текстовое поле ввода никакого воздействия УстановитьГраницыВыделения не оказывает. Мож руки - того...     | |||
| 6
    
        mrDSide 07.10.14✎ 18:07 | 
        ВыделенныйТекст (SelectedText)
 Использование: Чтение и запись. Описание: Тип: Строка. Содержит выделенный пользователем текст поля ввода на момент чтения свойства. При записи в свойство нового текста этот текст заменяет текст, выделенный в настоящий момент. При этом выделение сбрасывается. Доступность: Толстый клиент. Примечание: При использовании свойства для замены выделенного текста следует иметь в виду следующие особенности: Если в поле ввода не выделен текст, то записанный текст добавляется начиная с текущей позиции курсора. <b>После добавления текущее положение курсора меняется (перемещается в конец вставленного текста).<\b> Если поле ввода имеет ограниченную длину, то вставляется столько символов, сколько позволяет размер. Если тип данных, редактируемый в поле ввода Дата или используется маска, то вставляются только те символы, которые разрешены для данного поля ввода. | |||
| 7
    
        palpetrovich 07.10.14✎ 18:24 | 
        (4) имеется ввиду как-то так:
 ПолеВвода1 = ПолеВвода1 + " "; Длина = СтрДлина(ПолеВвода1); ЭлементыФормы.ПолеВвода1.УстановитьГраницыВыделения(Длина, Длина); | |||
| 8
    
        HEKPOH 07.10.14✎ 18:26 | 
        ЭлементыФормы.ПолеВвода.ВыделенныйТекст = ЭлементыФормы.ПолеВвода.Значение;     | |||
| 9
    
        HEKPOH 07.10.14✎ 18:27 | 
        в (6) правильный ответ, а в (8) - код     | |||
| 10
    
        Евгений Терехов 07.10.14✎ 18:28 | 
        (6) (8) Внимательно читайте СП!
 Если например в строке "Строка" выделено "Стр" и иснользовать код из (8), тогда получите "Строкаока" | |||
| 11
    
        Евгений Терехов 07.10.14✎ 18:29 | 
        (10) *использовать     | |||
| 12
    
        palpetrovich 07.10.14✎ 18:29 | 
        (10) +100500     | |||
| 13
    
        HEKPOH 07.10.14✎ 18:30 | 
        (10) читайте постановку задачи. цитирую "Соответственно, значение в этом поле становится выделенным. Можно как-то сделать, чтобы курсор перешел в конец значения этого поля, т.е. как если бы пользователь нажал кнопку End? "     | |||
| 14
    
        HEKPOH 07.10.14✎ 18:30 | 
        +(13) при данной постановке решение в (8) правильное     | |||
| 15
    
        Евгений Терехов 07.10.14✎ 18:31 | 
        УстановитьГраницыВыделения() - правильный совет: а точнее КонецСтроки = СтрДлина(ЭлементыФормы.ПолеВвода.Значение);
 ЭлементыФормы.ПолеВвода.УстановитьГраницыВыделения(КонецСтроки, КонецСтроки); | |||
| 16
    
        HEKPOH 07.10.14✎ 18:31 | 
        (15) не взлетит     | |||
| 17
    
        Евгений Терехов 07.10.14✎ 18:31 | 
        (13) (14) Вот попробуйте свой код и увидите что получится.     | |||
| 18
    
        HEKPOH 07.10.14✎ 18:32 | 
        (17) я попробовал и "ВыделенныйТекст" (работает), и УстановитьГраницыВыделения (не работает)     | |||
| 19
    
        palpetrovich 07.10.14✎ 18:35 | 
        (18) что, код в (7) не работает? ...у меня работает! только пробельчик добавлять приходится, дабы не на последнем символе курсор был     | |||
| 20
    
        HEKPOH 07.10.14✎ 18:37 | 
        (19) "пробельчик" - это замечательно :)
 для кода из (8) никаких пробелов добавлять не нужно | |||
| 21
    
        palpetrovich 07.10.14✎ 18:38 | 
        (20) да, я не заметил "Соответственно, значение в этом поле становится выделенным" - в этом случае (8) - катит     | |||
| 22
    
        HEKPOH 07.10.14✎ 18:39 | 
        (21) мир, дружба, жвачка! :)     | |||
| 23
    
        palpetrovich 07.10.14✎ 18:41 | 
        (22) а то :)     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |