Верхний или нижний индекс при копировании

Автор Сергей ISV, 15 октября 2022, 23:04

0 Пользователи и 1 гость просматривают эту тему.

Сергей ISV

Здравствуйте!
Пытаюсь из одной текстовой таблицы в другую скопировать ячейку.
Ищу содержимое в одной таблице через дескриптор поиска и присваиваю её содержимое переменной типа string. Затем вставляю эту переменную в ячейку в другой тестовой таблице.
Но дело в том, что копируемый текст имеет верхние или нижние индексы, например,
1·10-2-10000 кОм, а получаю после копирования текст 1·10-2-10000 кОм.
Как сделать, чтобы -2 в примере "не терялся" верхний или нижний индекс?

sokol92

#1
Переменная типа string хранит текст (unicode) и ничего не знает о форматировании и, поэтому, не подходит в качестве носителя для переноса форматированного текста.
Можно воспользоваться услугами контроллера документа:
1. С помощью метода select выделить необходимую часть документа.
2. С помощью метода getTransferable получить "переносимое представление" выделения.
3. С помощью метода insertTransferable вставить выделение в целевую позицию.

Примеры применения есть в книге А.Питоньяка OOME_4_0.odt. См. также эту тему нашего форума.

Можно также использовать системный буфер обмена. Для конкретных примеров могут быть и иные способы.
Владимир.