7.7 Выделение текста при возврате фокуса

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем СерТап, 3 окт 2010.

  1. TopicStarter Overlay
    СерТап
    Offline

    СерТап

    Регистрация:
    3 окт 2010
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Я работаю на 1с предприятие 7.7. я как бы это сказать "оператор", а не программист, я столкнулся с такой проблемой: я набираю медицинские статусы (описание больного) и хочу использовать программы типа флэшпаст, то есть когда текст который часто набираешь можно предварительно набить в программу флэшпаст и затем вставлять в поле ввода в 1с 7.7. Так вот, проблема в том. что когда фокус ввода уходит и вновь возвращается в поле ввода в 1с - автоматически происходит выделение всего ранее
    введеного текста, а если текст выделен то при вставке он соответвенно заменяется новым, а мне нужно чтобы старый текст оставался. Выходит, мне нужно, чтобы курсор вставал в конец старого текста.
    Я спрашивал у нашей программистки, но она только отмахнулась.
    Я тут немного почитал по 1с, залез в конфигуратор, смог даже используя куски кода, сделать "рабочий" флажок, может быть кто-нибудь подскажет как решить проблему?
    Если это поможет - поле ввода имеет следующие реквизиты: тип -строка, почему-то неактивный, и флажок - многострочный.
  2. TopicStarter Overlay
    СерТап
    Offline

    СерТап

    Регистрация:
    3 окт 2010
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    тут поискал в сети и понял, что это видимо, как говориться "баг" 7.7, и если можно что-то сделать то надо делать не в 1с, печально для меня
  3. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Все элементарно:
    Код:
    Процедура ПриНачалеВыбораЗначения(ИД,Флаг)
    Если ИД="МоеПолеВвода" Тогда
    Попытка    
    //объект можно описать через переменную и создавать при открытии 1 раз 
    WSHSHELL= СОЗДАТЬОБЪЕКТ( "WScript.Shell"); 
    WSHSHELL. SENDKEYS( "{HOME}"); 
    Исключение
    КонецПопытки;   
    КонецЕсли;
    КонецПроцедуры
    
    
    
  4. TopicStarter Overlay
    СерТап
    Offline

    СерТап

    Регистрация:
    3 окт 2010
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Бухгалтерский угодник!

    Огромное спасибо, что откликнулись на мой вопрос, только тут я что-то делаю неправильно: я вставил код в модуль документа, изменил название "моеПолеВвода" на свое - "Анамнез", но почему ничего не произошло, что я делаю неправильно?
    Тут еще подумал - я неправильно задал вопрос - Ведь, мне на самом деле нужно, чтобы текст в поле ввода после возвращения фокуса автоматически не выделялся (курсор и так при этом в конце), то есть, для наглядности: я вставил текст в поле ввода 1с, затем беру ворд, нахожу там нужную фразу, копирую в буфер обмена и затем делаю активным окно 1с и там прежний текст выделяется, курсор стоит в конце, но текст-то выделен, если я нажимаю Контрол+V, то происходит замена текста, что мне не нужно.
    А ради интереса - есть такие программы, когда в текстовом поле жмешь правую кнопку и там вместо контекстного меню древовидный набор готовых фраз? Это было бы вообще здорово.
    Код:
    Процедура ПриНачалеВыбораЗначения(ИД,Флаг)
    Если ИД="Анамнез" Тогда
    Попытка    
    //объект можно описать через переменную и создавать при открытии 1 раз 
    WSHSHELL= СОЗДАТЬОБЪЕКТ( "WScript.Shell"); 
    WSHSHELL. SENDKEYS( "{HOME}"); 
    Исключение
    КонецПопытки;   
    КонецЕсли;
    КонецПроцедуры
    
    
  5. TopicStarter Overlay
    СерТап
    Offline

    СерТап

    Регистрация:
    3 окт 2010
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Бухгалтерский угодник. Вы где? Помогите, пожалуйста, а то смертельно надоело печатать одно и то же.
  6. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Используйте буфер Вода - там такое можно реализовать.
    Если срабатывает скрипт - это все равно что вынажали клавищу (т.е. выделение должно сняться)

Поделиться этой страницей