![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 25.12.2006
Сообщений: 64
|
![]()
Не могу сам решить эту задачу.
Есть текст, в котором надо выловить надстрочные и подстрочные символы. Как я понял, надо использовать EM_GETCHARFORMAT, но как, я не пойму. Создал новый проект. Использую только стандартные TRichEdit, пока без всяких Jv, cx и пр. Указываю RichEdit1.SelStart:=i; взять текущий символ, и RichEdit1.SelLength:=1; взять 1 символ. Хотя, если указать 3, то все равно берется только 1 символ. Почему - не пойму. Насколько я понял, надо проверять yOffset: "Через EM_GETCHARFORMAT получить информацию о нужном символе в структуру CHARFORMAT (или CHARFORMAT2 для RE 2.0) и проверить содержимое поля yOffset. Если оно содержит нулевое значение - то текст обычный. Если положительное - текст надстрочный. Отрицательное - подстрочный." В dwMask я установил CFM_OFFSet ("Чтобы использовать элемент yOffset, установите флаг CFM_OFFSet в элементе DWMask". Но я пробовал, а толку ноль). Пробовал разные варианты, но я не знаю главного - передается ли информация о нужном символе в структуру CHARFORMAT2. Что-то я не вижу, как бы он туда мог передаться. Где код, который за это отвечает? Из Word'а копирую текст с над- и подстрочными символами и вставляю в RichEdit1. У меня Delphi 10.4. Вот полный код: Код:
|
![]() |
![]() |
![]() |
#2 |
Новичок
Джуниор
Регистрация: 10.03.2025
Сообщений: 2
|
![]()
Попробуйте заменить условие для надстрочного текста:
Код:
Код:
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Надстрочные/подстрочные символы/индексы. Степени. Формулы. | overlookerz | Общие вопросы Delphi | 6 | 21.01.2013 22:45 |
Невыводимые символы в Memo, RichEdit | Fre5h | Компоненты Delphi | 2 | 13.06.2012 08:47 |
Как определить курсор над контролом | antonkovaliou | Общие вопросы Delphi | 3 | 21.04.2012 10:09 |
ограничить символы в строке richedit | s1s1s1 | Общие вопросы Delphi | 0 | 07.06.2011 21:38 |
Надстрочные и подстрочные символы( Delphi) | CAMOBAP | Помощь студентам | 2 | 08.03.2011 15:08 |