[Alimir_BootModal_Login]

Создание конфигураций 1С: пишем "Переводчик английского" часть 3/4

Автор уроков и преподаватель школы: Владимир Милькин

Продолжаем разработку "Переводчика" на 1С. После четырнадцатого шага мы создали обработку "Перевод текста", форму для неё и элементы ввода текста на этой форме.

Если вы прерывались (закрывали конфигуратор) после предыдущей части - выполните шаг №3 (открытие конфигуратора) и шаг №4 (открытие дерева конфигурации). В дереве конфигурации откройте обработку "ПереводТекста":
- найдите в ней закладку "Формы"
- откройте там элемент "Форма"
- уже после этого переходите к шагу №15

Шаг №15: создаём команду формы

Вернёмся в конфигуратор. На форме нашей обработки выберем закладку "Команды", далее выберем закладку "Команды формы" и нажмём на зелёную кнопку плюс:

36

Добавится новая команда для формы. Выделим её двойным щелчком:

37

Справа откроется  окно со свойствами выделенной команды. В поле "Имя" установим значение "Перевести":

62

 
 

Шаг №16: превращаем команду формы в кнопку

Теперь проделаем следующий фокус: зажмем команду "Перевести" левой кнопкой мыши и перетащим её на левую часть окна, в которой написано "Командная панель":

42

Отлично. Как видим среди элементов формы появилась кнопка, действие которой будет связано с командой "Перевести". Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь. Это означает, что если пользователь нажмёт на эту кнопку, то выполнится команда (и соответственно процедура) "Перевести":

43

 
 

Шаг №17: создаём обработчик (процедуру) для команды

Снова выделим двойным щелчком команду "Перевести":

63

Откроется окно со свойствами команды. Нажмите на кнопку с лупой рядом со свойством "Действие":

64

Откроется окно создания обработчика для нашей команды. Выберем "Создать на клиенте" (первоначальное действие команды всегда происходит на клиенте) и нажмём кнопку "ОК":

39

Нас перенесёт в программный модуль формы (место где пишется код программы, связанный с визуальным представлением) в автоматически созданную процедуру "Перевести":

40

Внутри этой процедуры мы можем писать любые команды на встроенном языке 1С. Эти команды будут выполняться, когда пользователь нажмёт на кнопку формы, связанную с этой командой.

Обратите внимание на то, что переключаться между визуальным представлением формы и программным кодом модуля можно используя закладки в самом низу (Форма<->Модуль):

31

 
 

Шаг №18: пишем простейший код для обработчика команды

Вернёмся в процедуру "Перевод" в модуле формы и напишем в ней следующий код:

41

Код очень простой. Он выводит в окно сообщений значение реквизита "Текст". Давайте проверим это.

 
 

Шаг №19: проверяем этот код в действии

Запустим 1С в режиме Предприятие ("Отладка"->"Начать отладку") , откроем обработку "Сервис"->"Перевод текста", введём в поле "Текст" значение "hello" и нажмем кнопку "Перевести":

44

В результате в окно сообщений выведется как раз тот текст, что мы ввели:

45

 
 

Шаг №20: снова меняем обработчик команды

Но наша задача сделать перевод этого текста и поместить его в поле "Перевод". Давайте снова вернёмся в конфигуратор, в модуль формы. Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь.

Изменим процедуру "Перевести" таким образом, чтобы значение реквизита "Текст" устанавливалось в реквизит "Перевод":

47

Проверим это ("Отладка"->"Начать отладку").

 
 

Шаг №21: уже кое-что

Снова введём "hello" в поле "Текст" и нажмём кнопку "Перевести":

48

В результате во втором поле отобразится тот текст, что мы ввели в первое поле:

49

Замечательно. Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь. Осталось дело за малым, чтобы в поле "Перевод" попадала не точная копия введенного текста, а её перевод на русский.

Эталонная база, после выполнения всех шагов этого урока

Для учеников

Прибегайте к изучению эталонного варианта только после самостоятельного выполнения всех шагов.

На вопросы учеников — отвечаю по почте,  но прежде загляните в ЧАВО (ссылка) .

С уважением, Владимир Милькин

[Alimir_BootModal_Login]