Создание конфигураций 1С: пишем "Переводчик английского" часть 3/4
Автор уроков и преподаватель школы: Владимир Милькин
Продолжаем разработку "Переводчика" на 1С. После четырнадцатого шага мы создали обработку "Перевод текста", форму для неё и элементы ввода текста на этой форме.
Если вы прерывались (закрывали конфигуратор) после предыдущей части - выполните шаг №3 (открытие конфигуратора) и шаг №4 (открытие дерева конфигурации). В дереве конфигурации откройте обработку "ПереводТекста":
- найдите в ней закладку "Формы"
- откройте там элемент "Форма"
- уже после этого переходите к шагу №15
Оглавление
Шаг №15: создаём команду формы
Вернёмся в конфигуратор. На форме нашей обработки выберем закладку "Команды", далее выберем закладку "Команды формы" и нажмём на зелёную кнопку плюс:
Добавится новая команда для формы. Выделим её двойным щелчком:
Справа откроется окно со свойствами выделенной команды. В поле "Имя" установим значение "Перевести":
Шаг №16: превращаем команду формы в кнопку
Теперь проделаем следующий фокус: зажмем команду "Перевести" левой кнопкой мыши и перетащим её на левую часть окна, в которой написано "Командная панель":
Отлично. Как видим среди элементов формы появилась кнопка, действие которой будет связано с командой "Перевести". Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь. Это означает, что если пользователь нажмёт на эту кнопку, то выполнится команда (и соответственно процедура) "Перевести":
Шаг №17: создаём обработчик (процедуру) для команды
Снова выделим двойным щелчком команду "Перевести":
Откроется окно со свойствами команды. Нажмите на кнопку с лупой рядом со свойством "Действие":
Откроется окно создания обработчика для нашей команды. Выберем "Создать на клиенте" (первоначальное действие команды всегда происходит на клиенте) и нажмём кнопку "ОК":
Нас перенесёт в программный модуль формы (место где пишется код программы, связанный с визуальным представлением) в автоматически созданную процедуру "Перевести":
Внутри этой процедуры мы можем писать любые команды на встроенном языке 1С. Эти команды будут выполняться, когда пользователь нажмёт на кнопку формы, связанную с этой командой.
Обратите внимание на то, что переключаться между визуальным представлением формы и программным кодом модуля можно используя закладки в самом низу (Форма<->Модуль):
Шаг №18: пишем простейший код для обработчика команды
Вернёмся в процедуру "Перевод" в модуле формы и напишем в ней следующий код:
Код очень простой. Он выводит в окно сообщений значение реквизита "Текст". Давайте проверим это.
Шаг №19: проверяем этот код в действии
Запустим 1С в режиме Предприятие ("Отладка"->"Начать отладку") , откроем обработку "Сервис"->"Перевод текста", введём в поле "Текст" значение "hello" и нажмем кнопку "Перевести":
В результате в окно сообщений выведется как раз тот текст, что мы ввели:
Шаг №20: снова меняем обработчик команды
Но наша задача сделать перевод этого текста и поместить его в поле "Перевод". Давайте снова вернёмся в конфигуратор, в модуль формы. Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь.
Изменим процедуру "Перевести" таким образом, чтобы значение реквизита "Текст" устанавливалось в реквизит "Перевод":
Проверим это ("Отладка"->"Начать отладку").
Шаг №21: уже кое-что
Снова введём "hello" в поле "Текст" и нажмём кнопку "Перевести":
В результате во втором поле отобразится тот текст, что мы ввели в первое поле:
Замечательно. Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь. Осталось дело за малым, чтобы в поле "Перевод" попадала не точная копия введенного текста, а её перевод на русский.