• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

программное переключение вкладок таблицы

  • Автор темы hosm
  • Дата начала
H

hosm

На форме или подформе есть таблица в виде вкладок. Как можно переключать вкладки программно?

Понравилось англоязычное описание . Спасибо link removed.
1) Go to the property of table, open 'Table Programming' tab (the last one) and give the name of the whole table (Name/ID tag), also please give the name to all rows you want to switch using your code (Row Tags, Name)
2) Now let's go to the property Table Rows and select "Switch rows programatically" (otherwise it will not work, even if you cast magic), also enable 'show the tabs so user can pick row'.
3) Add field to the form with name = Name/ID tag and add prefix $. (f.x. if you called your table MainTable, field should be $MainTable, the purpose of this field is to contain name of row we need to show).
4) Now do your code, here is example of button/event

Код:
FIELD $MainTable := "Content";
@Command([ViewRefreshFields])
1) Открыть в свойствах таблицы последнюю вкладку 'Table Programming' и дать имя таблице в поле Name/ID tag. Дать названия всем строкам (вкладкам) таблицы, на которые нужно переключаться программно (Row Tags, Name).
2) Перейти к свойствам Table Rows (предпоследняя вкладка свойств) и выбрать "Switch rows programmatically" (иначе не будет работать - никакая магия не поможет) и установить также галку 'show the tabs so user can pick row' (Прим.OKEN: чтоб переключать вкладки мог и пользователь).
3) Добавить поле на форму с именем, равным Name/ID tag с префиксом $. (например, если таблица названа MainTable, поле должно быть $MainTable и содержать имя строки, которую надо показать).
4) Добавить свой код, вот пример для кнопки/события:
Код:
FIELD $MainTable := "Content";
@Command([ViewRefreshFields])
Дополнительно можно посмотреть хелп дизайнера - раздел "Creating programmable tables" и темы форума Можно ли открывать нужную вкладку в таблице, Переход на следующую закладку таблицы
Прим.OKEN. Если не указывать в п.1) имена вкладок, можно использовать переключение по тексту в поле Tab label and caption, предпоследняя закладка свойств таблицы.
Можно не добавлять поле на форму, как показано в п.3).
Можно определять нужную закладку скриптом (например, в Queryopen), используя конструкции вида:
Код:
' попасть на закладку с именем "Content"
call doc.replaceItemValue("$MainTable", "Content")
' а если поле не надо сохранять в документе, то так:
doc.replaceItemValue("$MainTable", "Content").SaveToDisk=False
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!