4. Программирование

Жмём на упоминавшуюся кнопку Blocks сверху справа.

Перейдя таким образом в редактор блоков видим:

Здесь:

  • элемент Blocks (левая колонка) содержит все доступные методы для всех используемых в текущем проекте компонентов, а также встроенные Built-in (здесь задаются переменные, функции, находятся все операторы, условия и т. д.) и методы, которыми можно изменить наборы компонентов (все кнопки, все текстовые поля и т.д.),
  • элемент Media - список загруженных медиа-файлов,
  • основной элемент - Viewer - здесь комбинируются все вытащенные на поле блоки.

Кнопкой Designer можно вернуть обратно к выбору и настройке компонентов.

Принцип работы аналогичен работе в редакторе дизайна - нужные методы хватаются и перемещаются на пустое поле Viewer. Далее по принципу пазла методы совмещаются друг с другом (для этого есть графические атрибуты - впадины и выступы).

Алгоритм работы программы

  1. Пользователем заполняется текстовое поле txt_path.
  2. Кнопка btn_open открывает указанный файл и загружает содержимое в текстовое поле txt_edit.
  3. Кнопка btn_saveupdate сохраняет указанный файл и загружает его в компонент браузера web_viewer.
  4. Текстовое поле lbl_status_r отображает сформированный путь для компонента браузера.

Вроде бы достаточно просто.

Программируем компоненты

Открытие файла по нажатию на компонент btn_open. Находим в списке компонентов btn_open, нажимаем на него, выплывают доступные методы:

Выбираем метод .Click - нажатие и удержание, - и перетаскиваем его на пустое поле:

Дальше нужно "сказать" компоненту File1 что и откуда открывать. Ищем этот компонент в списке и вытягиваем метод .ReadFrom прямо в блок с обработчиком нажатия кнопки (должен закрепиться с щелчком, включите колонки или не пугайтесь, если включены):

Появилось одно предупреждение (жёлтый треугольник и рядом цифра 1) из-за того, что код не закончен - методу необходимо указать обязательные параметры. Чтобы указать откуда брать файл считываем значение в текстовом поле txt_path методом .Text.

Считанный файл будет храниться в компоненте File1. Выводим его в поле txt_edit методом компонента File1 .GotText:

Здесь text в красном - содержимое файла.

Обработчик кнопки btn_saveupdate содержит метод компонента File1 .SaveText (текст, имя файла).

Так как пути для сохранения файла и загрузки файла в браузер отличаются (см. Строки и пути) будем использовать оператор joint чтобы слить заголовок "file:///sdcard" с остальным путём:

Сформированный путь отправим в текстовое поле lbl_status_r и компонент браузера web_viewer:

Ошибок (красный треугольник) и предупреждений (жёлтый треугольник) нет, пора проверить что получилось.

Далее: Тестирование и отлаживание.